couchbase 3.0.0.alpha.1-universal-darwin-19 → 3.0.0.beta.1-universal-darwin-19

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 (912) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +1 -0
  3. data/Gemfile +12 -2
  4. data/README.md +57 -2
  5. data/Rakefile +22 -0
  6. data/couchbase.gemspec +44 -11
  7. data/examples/analytics.rb +221 -0
  8. data/examples/crud.rb +1 -2
  9. data/examples/managing_analytics_indexes.rb +72 -0
  10. data/examples/managing_buckets.rb +47 -0
  11. data/examples/managing_collections.rb +58 -0
  12. data/examples/managing_query_indexes.rb +63 -0
  13. data/examples/managing_search_indexes.rb +62 -0
  14. data/examples/managing_view_indexes.rb +54 -0
  15. data/examples/query.rb +3 -2
  16. data/examples/query_with_consistency.rb +76 -0
  17. data/examples/search.rb +187 -0
  18. data/examples/search_with_consistency.rb +84 -0
  19. data/examples/subdocument.rb +25 -3
  20. data/examples/view.rb +50 -0
  21. data/ext/.clang-format +1 -1
  22. data/ext/.clang-tidy +2 -0
  23. data/ext/.idea/dictionaries/couchbase_terms.xml +2 -0
  24. data/ext/.idea/misc.xml +12 -0
  25. data/ext/.idea/vcs.xml +1 -0
  26. data/ext/CMakeLists.txt +40 -13
  27. data/ext/{couchbase/io/binary_message.hxx → build_config.hxx.in} +1 -19
  28. data/ext/build_version.hxx.in +26 -0
  29. data/ext/couchbase/bucket.hxx +105 -19
  30. data/ext/couchbase/cluster.hxx +148 -90
  31. data/ext/couchbase/cluster_options.hxx +53 -0
  32. data/ext/couchbase/collections_manifest.hxx +3 -3
  33. data/ext/couchbase/configuration.hxx +234 -2
  34. data/ext/couchbase/couchbase.cxx +4833 -476
  35. data/ext/couchbase/{operations/document_id.hxx → document_id.hxx} +5 -4
  36. data/ext/couchbase/io/dns_client.hxx +217 -0
  37. data/ext/couchbase/io/dns_codec.hxx +207 -0
  38. data/ext/couchbase/io/dns_config.hxx +116 -0
  39. data/ext/couchbase/io/dns_message.hxx +555 -0
  40. data/ext/couchbase/io/http_command.hxx +91 -0
  41. data/ext/couchbase/io/http_message.hxx +5 -1
  42. data/ext/couchbase/io/http_parser.hxx +2 -1
  43. data/ext/couchbase/io/http_session.hxx +120 -41
  44. data/ext/couchbase/io/{session_manager.hxx → http_session_manager.hxx} +43 -28
  45. data/ext/couchbase/io/mcbp_command.hxx +180 -0
  46. data/ext/couchbase/io/mcbp_message.hxx +63 -0
  47. data/ext/couchbase/io/mcbp_parser.hxx +101 -0
  48. data/ext/couchbase/io/mcbp_session.hxx +1046 -0
  49. data/ext/couchbase/io/streams.hxx +165 -0
  50. data/ext/couchbase/mutation_token.hxx +2 -1
  51. data/ext/couchbase/operations.hxx +70 -8
  52. data/ext/couchbase/operations/analytics_dataset_create.hxx +117 -0
  53. data/ext/couchbase/operations/analytics_dataset_drop.hxx +103 -0
  54. data/ext/couchbase/operations/analytics_dataset_get_all.hxx +107 -0
  55. data/ext/couchbase/operations/analytics_dataverse_create.hxx +104 -0
  56. data/ext/couchbase/operations/analytics_dataverse_drop.hxx +104 -0
  57. data/ext/couchbase/operations/analytics_get_pending_mutations.hxx +91 -0
  58. data/ext/couchbase/operations/analytics_index_create.hxx +128 -0
  59. data/ext/couchbase/operations/analytics_index_drop.hxx +110 -0
  60. data/ext/couchbase/operations/analytics_index_get_all.hxx +106 -0
  61. data/ext/couchbase/operations/analytics_link_connect.hxx +102 -0
  62. data/ext/couchbase/operations/analytics_link_disconnect.hxx +101 -0
  63. data/ext/couchbase/operations/bucket_create.hxx +141 -0
  64. data/ext/couchbase/operations/bucket_drop.hxx +68 -0
  65. data/ext/couchbase/operations/bucket_flush.hxx +68 -0
  66. data/ext/couchbase/operations/bucket_get.hxx +72 -0
  67. data/ext/couchbase/operations/bucket_get_all.hxx +65 -0
  68. data/ext/couchbase/operations/bucket_settings.hxx +111 -0
  69. data/ext/couchbase/operations/bucket_update.hxx +118 -0
  70. data/ext/couchbase/operations/cluster_developer_preview_enable.hxx +63 -0
  71. data/ext/couchbase/operations/collection_create.hxx +93 -0
  72. data/ext/couchbase/operations/collection_drop.hxx +85 -0
  73. data/ext/couchbase/operations/design_document.hxx +59 -0
  74. data/ext/couchbase/operations/document_analytics.hxx +288 -0
  75. data/ext/couchbase/operations/document_decrement.hxx +85 -0
  76. data/ext/couchbase/operations/document_exists.hxx +82 -0
  77. data/ext/couchbase/operations/{get.hxx → document_get.hxx} +10 -3
  78. data/ext/couchbase/operations/document_get_and_lock.hxx +69 -0
  79. data/ext/couchbase/operations/document_get_and_touch.hxx +69 -0
  80. data/ext/couchbase/operations/document_get_projected.hxx +247 -0
  81. data/ext/couchbase/operations/document_increment.hxx +87 -0
  82. data/ext/couchbase/operations/document_insert.hxx +79 -0
  83. data/ext/couchbase/operations/{lookup_in.hxx → document_lookup_in.hxx} +27 -3
  84. data/ext/couchbase/operations/{mutate_in.hxx → document_mutate_in.hxx} +58 -3
  85. data/ext/couchbase/operations/{query.hxx → document_query.hxx} +117 -12
  86. data/ext/couchbase/operations/{remove.hxx → document_remove.hxx} +17 -3
  87. data/ext/couchbase/operations/document_replace.hxx +81 -0
  88. data/ext/couchbase/operations/document_search.hxx +355 -0
  89. data/ext/couchbase/operations/document_touch.hxx +65 -0
  90. data/ext/couchbase/operations/{upsert.hxx → document_unlock.hxx} +17 -12
  91. data/ext/couchbase/operations/document_upsert.hxx +79 -0
  92. data/ext/couchbase/operations/document_view.hxx +228 -0
  93. data/ext/couchbase/operations/query_index_build_deferred.hxx +86 -0
  94. data/ext/couchbase/operations/query_index_create.hxx +135 -0
  95. data/ext/couchbase/operations/query_index_drop.hxx +109 -0
  96. data/ext/couchbase/operations/query_index_get_all.hxx +107 -0
  97. data/ext/couchbase/operations/scope_create.hxx +84 -0
  98. data/ext/couchbase/operations/scope_drop.hxx +82 -0
  99. data/ext/couchbase/operations/scope_get_all.hxx +76 -0
  100. data/ext/couchbase/operations/search_index.hxx +79 -0
  101. data/ext/couchbase/operations/search_index_analyze_document.hxx +92 -0
  102. data/ext/couchbase/operations/search_index_control_ingest.hxx +80 -0
  103. data/ext/couchbase/operations/search_index_control_plan_freeze.hxx +80 -0
  104. data/ext/couchbase/operations/search_index_control_query.hxx +80 -0
  105. data/ext/couchbase/operations/search_index_drop.hxx +77 -0
  106. data/ext/couchbase/operations/search_index_get.hxx +80 -0
  107. data/ext/couchbase/operations/search_index_get_all.hxx +82 -0
  108. data/ext/couchbase/operations/search_index_get_documents_count.hxx +81 -0
  109. data/ext/couchbase/operations/search_index_upsert.hxx +106 -0
  110. data/ext/couchbase/operations/view_index_drop.hxx +67 -0
  111. data/ext/couchbase/operations/view_index_get.hxx +90 -0
  112. data/ext/couchbase/operations/view_index_get_all.hxx +125 -0
  113. data/ext/couchbase/operations/view_index_upsert.hxx +87 -0
  114. data/ext/couchbase/origin.hxx +148 -0
  115. data/ext/couchbase/protocol/client_opcode.hxx +52 -3
  116. data/ext/couchbase/protocol/client_request.hxx +56 -9
  117. data/ext/couchbase/protocol/client_response.hxx +53 -16
  118. data/ext/couchbase/protocol/cmd_cluster_map_change_notification.hxx +76 -0
  119. data/ext/couchbase/protocol/cmd_decrement.hxx +187 -0
  120. data/ext/couchbase/protocol/cmd_exists.hxx +171 -0
  121. data/ext/couchbase/protocol/cmd_get.hxx +31 -8
  122. data/ext/couchbase/protocol/cmd_get_and_lock.hxx +142 -0
  123. data/ext/couchbase/protocol/cmd_get_and_touch.hxx +142 -0
  124. data/ext/couchbase/protocol/cmd_get_cluster_config.hxx +16 -8
  125. data/ext/couchbase/protocol/cmd_get_collection_id.hxx +117 -0
  126. data/ext/couchbase/protocol/cmd_get_collections_manifest.hxx +16 -3
  127. data/ext/couchbase/protocol/cmd_get_error_map.hxx +16 -3
  128. data/ext/couchbase/protocol/cmd_hello.hxx +34 -8
  129. data/ext/couchbase/protocol/cmd_increment.hxx +187 -0
  130. data/ext/couchbase/protocol/cmd_info.hxx +1 -11
  131. data/ext/couchbase/protocol/cmd_insert.hxx +172 -0
  132. data/ext/couchbase/protocol/cmd_lookup_in.hxx +29 -13
  133. data/ext/couchbase/protocol/cmd_mutate_in.hxx +116 -16
  134. data/ext/couchbase/protocol/cmd_remove.hxx +59 -4
  135. data/ext/couchbase/protocol/cmd_replace.hxx +172 -0
  136. data/ext/couchbase/protocol/cmd_sasl_auth.hxx +15 -3
  137. data/ext/couchbase/protocol/cmd_sasl_list_mechs.hxx +15 -3
  138. data/ext/couchbase/protocol/cmd_sasl_step.hxx +15 -3
  139. data/ext/couchbase/protocol/cmd_select_bucket.hxx +14 -2
  140. data/ext/couchbase/protocol/cmd_touch.hxx +102 -0
  141. data/ext/couchbase/protocol/cmd_unlock.hxx +95 -0
  142. data/ext/couchbase/protocol/cmd_upsert.hxx +54 -18
  143. data/ext/couchbase/protocol/durability_level.hxx +67 -0
  144. data/ext/couchbase/protocol/frame_info_id.hxx +187 -0
  145. data/ext/couchbase/protocol/hello_feature.hxx +137 -0
  146. data/ext/couchbase/protocol/server_opcode.hxx +57 -0
  147. data/ext/couchbase/protocol/server_request.hxx +122 -0
  148. data/ext/couchbase/protocol/unsigned_leb128.h +15 -15
  149. data/ext/couchbase/service_type.hxx +38 -1
  150. data/ext/couchbase/timeout_defaults.hxx +41 -0
  151. data/ext/couchbase/utils/byteswap.hxx +1 -2
  152. data/ext/couchbase/utils/connection_string.hxx +370 -0
  153. data/ext/couchbase/utils/url_codec.hxx +225 -0
  154. data/ext/couchbase/version.hxx +3 -1
  155. data/ext/extconf.rb +46 -10
  156. data/ext/test/main.cxx +111 -118
  157. data/ext/third_party/http_parser/Makefile +160 -0
  158. data/ext/third_party/json/Makefile +77 -0
  159. data/ext/third_party/snappy/.appveyor.yml +36 -0
  160. data/ext/third_party/snappy/.gitignore +8 -0
  161. data/ext/third_party/snappy/.travis.yml +98 -0
  162. data/ext/third_party/snappy/AUTHORS +1 -0
  163. data/ext/third_party/snappy/CMakeLists.txt +345 -0
  164. data/ext/third_party/snappy/CONTRIBUTING.md +26 -0
  165. data/ext/third_party/snappy/COPYING +54 -0
  166. data/ext/third_party/snappy/NEWS +188 -0
  167. data/ext/third_party/snappy/README.md +148 -0
  168. data/ext/third_party/snappy/cmake/SnappyConfig.cmake.in +33 -0
  169. data/ext/third_party/snappy/cmake/config.h.in +59 -0
  170. data/ext/third_party/snappy/docs/README.md +72 -0
  171. data/ext/third_party/snappy/format_description.txt +110 -0
  172. data/ext/third_party/snappy/framing_format.txt +135 -0
  173. data/ext/third_party/snappy/snappy-c.cc +90 -0
  174. data/ext/third_party/snappy/snappy-c.h +138 -0
  175. data/ext/third_party/snappy/snappy-internal.h +315 -0
  176. data/ext/third_party/snappy/snappy-sinksource.cc +121 -0
  177. data/ext/third_party/snappy/snappy-sinksource.h +182 -0
  178. data/ext/third_party/snappy/snappy-stubs-internal.cc +42 -0
  179. data/ext/third_party/snappy/snappy-stubs-internal.h +493 -0
  180. data/ext/third_party/snappy/snappy-stubs-public.h.in +63 -0
  181. data/ext/third_party/snappy/snappy-test.cc +613 -0
  182. data/ext/third_party/snappy/snappy-test.h +526 -0
  183. data/ext/third_party/snappy/snappy.cc +1770 -0
  184. data/ext/third_party/snappy/snappy.h +209 -0
  185. data/ext/third_party/snappy/snappy_compress_fuzzer.cc +60 -0
  186. data/ext/third_party/snappy/snappy_uncompress_fuzzer.cc +58 -0
  187. data/ext/third_party/snappy/snappy_unittest.cc +1512 -0
  188. data/lib/couchbase/analytics_options.rb +179 -0
  189. data/lib/couchbase/binary_collection.rb +37 -76
  190. data/lib/couchbase/binary_collection_options.rb +98 -0
  191. data/lib/couchbase/bucket.rb +63 -5
  192. data/lib/couchbase/cluster.rb +189 -113
  193. data/lib/couchbase/collection.rb +153 -200
  194. data/lib/couchbase/collection_options.rb +496 -0
  195. data/{bin/console → lib/couchbase/datastructures.rb} +4 -7
  196. data/lib/couchbase/datastructures/couchbase_list.rb +171 -0
  197. data/lib/couchbase/datastructures/couchbase_map.rb +205 -0
  198. data/lib/couchbase/datastructures/couchbase_queue.rb +145 -0
  199. data/lib/couchbase/datastructures/couchbase_set.rb +138 -0
  200. data/lib/couchbase/errors.rb +140 -135
  201. data/{bin/setup → lib/couchbase/json_transcoder.rb} +17 -8
  202. data/lib/couchbase/libcouchbase.bundle +0 -0
  203. data/lib/couchbase/management/analytics_index_manager.rb +309 -19
  204. data/lib/couchbase/management/bucket_manager.rb +98 -33
  205. data/lib/couchbase/management/collection_manager.rb +175 -1
  206. data/lib/couchbase/management/query_index_manager.rb +271 -0
  207. data/lib/couchbase/management/search_index_manager.rb +338 -0
  208. data/lib/couchbase/management/user_manager.rb +13 -11
  209. data/lib/couchbase/management/view_index_manager.rb +204 -1
  210. data/lib/couchbase/mutation_state.rb +12 -1
  211. data/lib/couchbase/query_options.rb +242 -0
  212. data/lib/couchbase/scope.rb +3 -10
  213. data/lib/couchbase/search_options.rb +1499 -0
  214. data/lib/couchbase/subdoc.rb +80 -19
  215. data/lib/couchbase/version.rb +1 -1
  216. data/lib/couchbase/view_options.rb +156 -0
  217. metadata +164 -777
  218. data/.gitignore +0 -20
  219. data/.gitmodules +0 -15
  220. data/.idea/.gitignore +0 -5
  221. data/.idea/dictionaries/gem_terms.xml +0 -13
  222. data/.idea/inspectionProfiles/Project_Default.xml +0 -7
  223. data/.idea/vcs.xml +0 -11
  224. data/.travis.yml +0 -7
  225. data/ext/couchbase/configuration_monitor.hxx +0 -93
  226. data/ext/couchbase/io/binary_parser.hxx +0 -64
  227. data/ext/couchbase/io/key_value_session.hxx +0 -754
  228. data/ext/couchbase/operations/command.hxx +0 -77
  229. data/ext/third_party/asio/asio/src/examples/cpp03/Makefile.am +0 -251
  230. data/ext/third_party/asio/asio/src/examples/cpp03/allocation/.gitignore +0 -10
  231. data/ext/third_party/asio/asio/src/examples/cpp03/allocation/server.cpp +0 -285
  232. data/ext/third_party/asio/asio/src/examples/cpp03/buffers/.gitignore +0 -10
  233. data/ext/third_party/asio/asio/src/examples/cpp03/buffers/reference_counted.cpp +0 -131
  234. data/ext/third_party/asio/asio/src/examples/cpp03/chat/.gitignore +0 -11
  235. data/ext/third_party/asio/asio/src/examples/cpp03/chat/chat_client.cpp +0 -177
  236. data/ext/third_party/asio/asio/src/examples/cpp03/chat/chat_message.hpp +0 -93
  237. data/ext/third_party/asio/asio/src/examples/cpp03/chat/chat_server.cpp +0 -249
  238. data/ext/third_party/asio/asio/src/examples/cpp03/chat/posix_chat_client.cpp +0 -204
  239. data/ext/third_party/asio/asio/src/examples/cpp03/echo/.gitignore +0 -11
  240. data/ext/third_party/asio/asio/src/examples/cpp03/echo/async_tcp_echo_server.cpp +0 -137
  241. data/ext/third_party/asio/asio/src/examples/cpp03/echo/async_udp_echo_server.cpp +0 -92
  242. data/ext/third_party/asio/asio/src/examples/cpp03/echo/blocking_tcp_echo_client.cpp +0 -59
  243. data/ext/third_party/asio/asio/src/examples/cpp03/echo/blocking_tcp_echo_server.cpp +0 -79
  244. data/ext/third_party/asio/asio/src/examples/cpp03/echo/blocking_udp_echo_client.cpp +0 -59
  245. data/ext/third_party/asio/asio/src/examples/cpp03/echo/blocking_udp_echo_server.cpp +0 -53
  246. data/ext/third_party/asio/asio/src/examples/cpp03/fork/.gitignore +0 -11
  247. data/ext/third_party/asio/asio/src/examples/cpp03/fork/daemon.cpp +0 -190
  248. data/ext/third_party/asio/asio/src/examples/cpp03/fork/process_per_connection.cpp +0 -161
  249. data/ext/third_party/asio/asio/src/examples/cpp03/http/client/.gitignore +0 -10
  250. data/ext/third_party/asio/asio/src/examples/cpp03/http/client/async_client.cpp +0 -204
  251. data/ext/third_party/asio/asio/src/examples/cpp03/http/client/sync_client.cpp +0 -106
  252. data/ext/third_party/asio/asio/src/examples/cpp03/http/doc_root/data_1K.html +0 -28
  253. data/ext/third_party/asio/asio/src/examples/cpp03/http/doc_root/data_2K.html +0 -49
  254. data/ext/third_party/asio/asio/src/examples/cpp03/http/doc_root/data_4K.html +0 -91
  255. data/ext/third_party/asio/asio/src/examples/cpp03/http/doc_root/data_8K.html +0 -175
  256. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/.gitignore +0 -11
  257. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/connection.cpp +0 -99
  258. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/connection.hpp +0 -83
  259. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/connection_manager.cpp +0 -38
  260. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/connection_manager.hpp +0 -44
  261. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/header.hpp +0 -28
  262. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/main.cpp +0 -44
  263. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/mime_types.cpp +0 -46
  264. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/mime_types.hpp +0 -27
  265. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/reply.cpp +0 -256
  266. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/reply.hpp +0 -64
  267. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/request.hpp +0 -34
  268. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/request_handler.cpp +0 -122
  269. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/request_handler.hpp +0 -46
  270. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/request_parser.cpp +0 -315
  271. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/request_parser.hpp +0 -95
  272. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/server.cpp +0 -94
  273. data/ext/third_party/asio/asio/src/examples/cpp03/http/server/server.hpp +0 -69
  274. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/.gitignore +0 -11
  275. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/connection.cpp +0 -93
  276. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/connection.hpp +0 -75
  277. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/header.hpp +0 -28
  278. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/io_context_pool.cpp +0 -69
  279. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/io_context_pool.hpp +0 -58
  280. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/main.cpp +0 -46
  281. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/mime_types.cpp +0 -46
  282. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/mime_types.hpp +0 -27
  283. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/reply.cpp +0 -256
  284. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/reply.hpp +0 -64
  285. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/request.hpp +0 -34
  286. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/request_handler.cpp +0 -122
  287. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/request_handler.hpp +0 -46
  288. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/request_parser.cpp +0 -315
  289. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/request_parser.hpp +0 -95
  290. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/server.cpp +0 -77
  291. data/ext/third_party/asio/asio/src/examples/cpp03/http/server2/server.hpp +0 -68
  292. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/.gitignore +0 -11
  293. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/connection.cpp +0 -94
  294. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/connection.hpp +0 -78
  295. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/header.hpp +0 -28
  296. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/main.cpp +0 -46
  297. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/mime_types.cpp +0 -46
  298. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/mime_types.hpp +0 -27
  299. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/reply.cpp +0 -256
  300. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/reply.hpp +0 -64
  301. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/request.hpp +0 -34
  302. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/request_handler.cpp +0 -122
  303. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/request_handler.hpp +0 -46
  304. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/request_parser.cpp +0 -315
  305. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/request_parser.hpp +0 -95
  306. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/server.cpp +0 -89
  307. data/ext/third_party/asio/asio/src/examples/cpp03/http/server3/server.hpp +0 -70
  308. data/ext/third_party/asio/asio/src/examples/cpp03/http/server4/.gitignore +0 -11
  309. data/ext/third_party/asio/asio/src/examples/cpp03/http/server4/file_handler.cpp +0 -122
  310. data/ext/third_party/asio/asio/src/examples/cpp03/http/server4/file_handler.hpp +0 -44
  311. data/ext/third_party/asio/asio/src/examples/cpp03/http/server4/header.hpp +0 -28
  312. data/ext/third_party/asio/asio/src/examples/cpp03/http/server4/main.cpp +0 -58
  313. data/ext/third_party/asio/asio/src/examples/cpp03/http/server4/mime_types.cpp +0 -46
  314. data/ext/third_party/asio/asio/src/examples/cpp03/http/server4/mime_types.hpp +0 -27
  315. data/ext/third_party/asio/asio/src/examples/cpp03/http/server4/reply.cpp +0 -256
  316. data/ext/third_party/asio/asio/src/examples/cpp03/http/server4/reply.hpp +0 -64
  317. data/ext/third_party/asio/asio/src/examples/cpp03/http/server4/request.hpp +0 -46
  318. data/ext/third_party/asio/asio/src/examples/cpp03/http/server4/request_parser.cpp +0 -226
  319. data/ext/third_party/asio/asio/src/examples/cpp03/http/server4/request_parser.hpp +0 -78
  320. data/ext/third_party/asio/asio/src/examples/cpp03/http/server4/server.cpp +0 -122
  321. data/ext/third_party/asio/asio/src/examples/cpp03/http/server4/server.hpp +0 -73
  322. data/ext/third_party/asio/asio/src/examples/cpp03/icmp/.gitignore +0 -10
  323. data/ext/third_party/asio/asio/src/examples/cpp03/icmp/icmp_header.hpp +0 -94
  324. data/ext/third_party/asio/asio/src/examples/cpp03/icmp/ipv4_header.hpp +0 -102
  325. data/ext/third_party/asio/asio/src/examples/cpp03/icmp/ping.cpp +0 -163
  326. data/ext/third_party/asio/asio/src/examples/cpp03/invocation/.gitignore +0 -10
  327. data/ext/third_party/asio/asio/src/examples/cpp03/invocation/prioritised_handlers.cpp +0 -171
  328. data/ext/third_party/asio/asio/src/examples/cpp03/iostreams/.gitignore +0 -11
  329. data/ext/third_party/asio/asio/src/examples/cpp03/iostreams/daytime_client.cpp +0 -44
  330. data/ext/third_party/asio/asio/src/examples/cpp03/iostreams/daytime_server.cpp +0 -51
  331. data/ext/third_party/asio/asio/src/examples/cpp03/iostreams/http_client.cpp +0 -91
  332. data/ext/third_party/asio/asio/src/examples/cpp03/local/.gitignore +0 -13
  333. data/ext/third_party/asio/asio/src/examples/cpp03/local/connect_pair.cpp +0 -141
  334. data/ext/third_party/asio/asio/src/examples/cpp03/local/iostream_client.cpp +0 -62
  335. data/ext/third_party/asio/asio/src/examples/cpp03/local/stream_client.cpp +0 -61
  336. data/ext/third_party/asio/asio/src/examples/cpp03/local/stream_server.cpp +0 -141
  337. data/ext/third_party/asio/asio/src/examples/cpp03/multicast/.gitignore +0 -11
  338. data/ext/third_party/asio/asio/src/examples/cpp03/multicast/receiver.cpp +0 -93
  339. data/ext/third_party/asio/asio/src/examples/cpp03/multicast/sender.cpp +0 -98
  340. data/ext/third_party/asio/asio/src/examples/cpp03/nonblocking/.gitignore +0 -10
  341. data/ext/third_party/asio/asio/src/examples/cpp03/nonblocking/third_party_lib.cpp +0 -240
  342. data/ext/third_party/asio/asio/src/examples/cpp03/porthopper/.gitignore +0 -11
  343. data/ext/third_party/asio/asio/src/examples/cpp03/porthopper/client.cpp +0 -192
  344. data/ext/third_party/asio/asio/src/examples/cpp03/porthopper/protocol.hpp +0 -156
  345. data/ext/third_party/asio/asio/src/examples/cpp03/porthopper/server.cpp +0 -187
  346. data/ext/third_party/asio/asio/src/examples/cpp03/serialization/.gitignore +0 -11
  347. data/ext/third_party/asio/asio/src/examples/cpp03/serialization/client.cpp +0 -125
  348. data/ext/third_party/asio/asio/src/examples/cpp03/serialization/connection.hpp +0 -188
  349. data/ext/third_party/asio/asio/src/examples/cpp03/serialization/server.cpp +0 -123
  350. data/ext/third_party/asio/asio/src/examples/cpp03/serialization/stock.hpp +0 -50
  351. data/ext/third_party/asio/asio/src/examples/cpp03/services/.gitignore +0 -11
  352. data/ext/third_party/asio/asio/src/examples/cpp03/services/basic_logger.hpp +0 -83
  353. data/ext/third_party/asio/asio/src/examples/cpp03/services/daytime_client.cpp +0 -97
  354. data/ext/third_party/asio/asio/src/examples/cpp03/services/logger.hpp +0 -24
  355. data/ext/third_party/asio/asio/src/examples/cpp03/services/logger_service.cpp +0 -11
  356. data/ext/third_party/asio/asio/src/examples/cpp03/services/logger_service.hpp +0 -145
  357. data/ext/third_party/asio/asio/src/examples/cpp03/socks4/.gitignore +0 -10
  358. data/ext/third_party/asio/asio/src/examples/cpp03/socks4/socks4.hpp +0 -144
  359. data/ext/third_party/asio/asio/src/examples/cpp03/socks4/sync_client.cpp +0 -94
  360. data/ext/third_party/asio/asio/src/examples/cpp03/spawn/.gitignore +0 -12
  361. data/ext/third_party/asio/asio/src/examples/cpp03/spawn/echo_server.cpp +0 -122
  362. data/ext/third_party/asio/asio/src/examples/cpp03/spawn/parallel_grep.cpp +0 -89
  363. data/ext/third_party/asio/asio/src/examples/cpp03/ssl/.gitignore +0 -11
  364. data/ext/third_party/asio/asio/src/examples/cpp03/ssl/README +0 -8
  365. data/ext/third_party/asio/asio/src/examples/cpp03/ssl/ca.pem +0 -49
  366. data/ext/third_party/asio/asio/src/examples/cpp03/ssl/client.cpp +0 -157
  367. data/ext/third_party/asio/asio/src/examples/cpp03/ssl/dh2048.pem +0 -8
  368. data/ext/third_party/asio/asio/src/examples/cpp03/ssl/server.cpp +0 -170
  369. data/ext/third_party/asio/asio/src/examples/cpp03/ssl/server.pem +0 -71
  370. data/ext/third_party/asio/asio/src/examples/cpp03/timeouts/.gitignore +0 -11
  371. data/ext/third_party/asio/asio/src/examples/cpp03/timeouts/async_tcp_client.cpp +0 -311
  372. data/ext/third_party/asio/asio/src/examples/cpp03/timeouts/blocking_tcp_client.cpp +0 -191
  373. data/ext/third_party/asio/asio/src/examples/cpp03/timeouts/blocking_token_tcp_client.cpp +0 -200
  374. data/ext/third_party/asio/asio/src/examples/cpp03/timeouts/blocking_udp_client.cpp +0 -154
  375. data/ext/third_party/asio/asio/src/examples/cpp03/timeouts/server.cpp +0 -433
  376. data/ext/third_party/asio/asio/src/examples/cpp03/timers/.gitignore +0 -10
  377. data/ext/third_party/asio/asio/src/examples/cpp03/timers/time_t_timer.cpp +0 -106
  378. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/daytime1/.gitignore +0 -10
  379. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/daytime1/client.cpp +0 -57
  380. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/daytime2/.gitignore +0 -10
  381. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/daytime2/server.cpp +0 -50
  382. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/daytime3/.gitignore +0 -10
  383. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/daytime3/server.cpp +0 -119
  384. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/daytime4/.gitignore +0 -10
  385. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/daytime4/client.cpp +0 -52
  386. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/daytime5/.gitignore +0 -10
  387. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/daytime5/server.cpp +0 -53
  388. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/daytime6/.gitignore +0 -10
  389. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/daytime6/server.cpp +0 -89
  390. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/daytime7/.gitignore +0 -10
  391. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/daytime7/server.cpp +0 -160
  392. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/daytime_dox.txt +0 -500
  393. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/index_dox.txt +0 -48
  394. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/timer1/.gitignore +0 -10
  395. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/timer1/timer.cpp +0 -24
  396. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/timer2/.gitignore +0 -10
  397. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/timer2/timer.cpp +0 -29
  398. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/timer3/.gitignore +0 -10
  399. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/timer3/timer.cpp +0 -43
  400. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/timer4/.gitignore +0 -10
  401. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/timer4/timer.cpp +0 -54
  402. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/timer5/.gitignore +0 -10
  403. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/timer5/timer.cpp +0 -80
  404. data/ext/third_party/asio/asio/src/examples/cpp03/tutorial/timer_dox.txt +0 -378
  405. data/ext/third_party/asio/asio/src/examples/cpp03/windows/.gitignore +0 -10
  406. data/ext/third_party/asio/asio/src/examples/cpp03/windows/transmit_file.cpp +0 -177
  407. data/ext/third_party/asio/asio/src/examples/cpp11/Makefile.am +0 -161
  408. data/ext/third_party/asio/asio/src/examples/cpp11/allocation/.gitignore +0 -10
  409. data/ext/third_party/asio/asio/src/examples/cpp11/allocation/server.cpp +0 -255
  410. data/ext/third_party/asio/asio/src/examples/cpp11/buffers/.gitignore +0 -10
  411. data/ext/third_party/asio/asio/src/examples/cpp11/buffers/reference_counted.cpp +0 -122
  412. data/ext/third_party/asio/asio/src/examples/cpp11/chat/.gitignore +0 -11
  413. data/ext/third_party/asio/asio/src/examples/cpp11/chat/chat_client.cpp +0 -167
  414. data/ext/third_party/asio/asio/src/examples/cpp11/chat/chat_message.hpp +0 -91
  415. data/ext/third_party/asio/asio/src/examples/cpp11/chat/chat_server.cpp +0 -227
  416. data/ext/third_party/asio/asio/src/examples/cpp11/echo/.gitignore +0 -11
  417. data/ext/third_party/asio/asio/src/examples/cpp11/echo/async_tcp_echo_server.cpp +0 -114
  418. data/ext/third_party/asio/asio/src/examples/cpp11/echo/async_udp_echo_server.cpp +0 -82
  419. data/ext/third_party/asio/asio/src/examples/cpp11/echo/blocking_tcp_echo_client.cpp +0 -55
  420. data/ext/third_party/asio/asio/src/examples/cpp11/echo/blocking_tcp_echo_server.cpp +0 -74
  421. data/ext/third_party/asio/asio/src/examples/cpp11/echo/blocking_udp_echo_client.cpp +0 -58
  422. data/ext/third_party/asio/asio/src/examples/cpp11/echo/blocking_udp_echo_server.cpp +0 -52
  423. data/ext/third_party/asio/asio/src/examples/cpp11/executors/.gitignore +0 -5
  424. data/ext/third_party/asio/asio/src/examples/cpp11/executors/actor.cpp +0 -286
  425. data/ext/third_party/asio/asio/src/examples/cpp11/executors/bank_account_1.cpp +0 -54
  426. data/ext/third_party/asio/asio/src/examples/cpp11/executors/bank_account_2.cpp +0 -54
  427. data/ext/third_party/asio/asio/src/examples/cpp11/executors/fork_join.cpp +0 -328
  428. data/ext/third_party/asio/asio/src/examples/cpp11/executors/pipeline.cpp +0 -299
  429. data/ext/third_party/asio/asio/src/examples/cpp11/executors/priority_scheduler.cpp +0 -174
  430. data/ext/third_party/asio/asio/src/examples/cpp11/fork/.gitignore +0 -11
  431. data/ext/third_party/asio/asio/src/examples/cpp11/fork/daemon.cpp +0 -189
  432. data/ext/third_party/asio/asio/src/examples/cpp11/fork/process_per_connection.cpp +0 -162
  433. data/ext/third_party/asio/asio/src/examples/cpp11/futures/.gitignore +0 -11
  434. data/ext/third_party/asio/asio/src/examples/cpp11/futures/daytime_client.cpp +0 -94
  435. data/ext/third_party/asio/asio/src/examples/cpp11/handler_tracking/custom_tracking.hpp +0 -201
  436. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/.gitignore +0 -11
  437. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/connection.cpp +0 -94
  438. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/connection.hpp +0 -79
  439. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/connection_manager.cpp +0 -40
  440. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/connection_manager.hpp +0 -48
  441. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/header.hpp +0 -28
  442. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/main.cpp +0 -43
  443. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/mime_types.cpp +0 -45
  444. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/mime_types.hpp +0 -27
  445. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/reply.cpp +0 -255
  446. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/reply.hpp +0 -64
  447. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/request.hpp +0 -34
  448. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/request_handler.cpp +0 -121
  449. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/request_handler.hpp +0 -47
  450. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/request_parser.cpp +0 -315
  451. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/request_parser.hpp +0 -96
  452. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/server.cpp +0 -94
  453. data/ext/third_party/asio/asio/src/examples/cpp11/http/server/server.hpp +0 -64
  454. data/ext/third_party/asio/asio/src/examples/cpp11/invocation/.gitignore +0 -10
  455. data/ext/third_party/asio/asio/src/examples/cpp11/invocation/prioritised_handlers.cpp +0 -202
  456. data/ext/third_party/asio/asio/src/examples/cpp11/iostreams/.gitignore +0 -11
  457. data/ext/third_party/asio/asio/src/examples/cpp11/iostreams/http_client.cpp +0 -91
  458. data/ext/third_party/asio/asio/src/examples/cpp11/local/.gitignore +0 -13
  459. data/ext/third_party/asio/asio/src/examples/cpp11/local/connect_pair.cpp +0 -129
  460. data/ext/third_party/asio/asio/src/examples/cpp11/local/iostream_client.cpp +0 -61
  461. data/ext/third_party/asio/asio/src/examples/cpp11/local/stream_client.cpp +0 -60
  462. data/ext/third_party/asio/asio/src/examples/cpp11/local/stream_server.cpp +0 -121
  463. data/ext/third_party/asio/asio/src/examples/cpp11/multicast/.gitignore +0 -11
  464. data/ext/third_party/asio/asio/src/examples/cpp11/multicast/receiver.cpp +0 -88
  465. data/ext/third_party/asio/asio/src/examples/cpp11/multicast/sender.cpp +0 -91
  466. data/ext/third_party/asio/asio/src/examples/cpp11/nonblocking/.gitignore +0 -10
  467. data/ext/third_party/asio/asio/src/examples/cpp11/nonblocking/third_party_lib.cpp +0 -212
  468. data/ext/third_party/asio/asio/src/examples/cpp11/operations/.gitignore +0 -10
  469. data/ext/third_party/asio/asio/src/examples/cpp11/operations/composed_1.cpp +0 -113
  470. data/ext/third_party/asio/asio/src/examples/cpp11/operations/composed_2.cpp +0 -131
  471. data/ext/third_party/asio/asio/src/examples/cpp11/operations/composed_3.cpp +0 -192
  472. data/ext/third_party/asio/asio/src/examples/cpp11/operations/composed_4.cpp +0 -207
  473. data/ext/third_party/asio/asio/src/examples/cpp11/operations/composed_5.cpp +0 -243
  474. data/ext/third_party/asio/asio/src/examples/cpp11/operations/composed_6.cpp +0 -302
  475. data/ext/third_party/asio/asio/src/examples/cpp11/operations/composed_7.cpp +0 -222
  476. data/ext/third_party/asio/asio/src/examples/cpp11/operations/composed_8.cpp +0 -217
  477. data/ext/third_party/asio/asio/src/examples/cpp11/socks4/.gitignore +0 -10
  478. data/ext/third_party/asio/asio/src/examples/cpp11/socks4/socks4.hpp +0 -143
  479. data/ext/third_party/asio/asio/src/examples/cpp11/socks4/sync_client.cpp +0 -93
  480. data/ext/third_party/asio/asio/src/examples/cpp11/spawn/.gitignore +0 -12
  481. data/ext/third_party/asio/asio/src/examples/cpp11/spawn/echo_server.cpp +0 -111
  482. data/ext/third_party/asio/asio/src/examples/cpp11/spawn/parallel_grep.cpp +0 -84
  483. data/ext/third_party/asio/asio/src/examples/cpp11/ssl/.gitignore +0 -11
  484. data/ext/third_party/asio/asio/src/examples/cpp11/ssl/README +0 -8
  485. data/ext/third_party/asio/asio/src/examples/cpp11/ssl/ca.pem +0 -49
  486. data/ext/third_party/asio/asio/src/examples/cpp11/ssl/client.cpp +0 -165
  487. data/ext/third_party/asio/asio/src/examples/cpp11/ssl/dh2048.pem +0 -8
  488. data/ext/third_party/asio/asio/src/examples/cpp11/ssl/server.cpp +0 -143
  489. data/ext/third_party/asio/asio/src/examples/cpp11/ssl/server.pem +0 -71
  490. data/ext/third_party/asio/asio/src/examples/cpp11/timeouts/.gitignore +0 -11
  491. data/ext/third_party/asio/asio/src/examples/cpp11/timeouts/async_tcp_client.cpp +0 -311
  492. data/ext/third_party/asio/asio/src/examples/cpp11/timeouts/blocking_tcp_client.cpp +0 -192
  493. data/ext/third_party/asio/asio/src/examples/cpp11/timeouts/blocking_token_tcp_client.cpp +0 -197
  494. data/ext/third_party/asio/asio/src/examples/cpp11/timeouts/blocking_udp_client.cpp +0 -155
  495. data/ext/third_party/asio/asio/src/examples/cpp11/timeouts/server.cpp +0 -433
  496. data/ext/third_party/asio/asio/src/examples/cpp11/timers/.gitignore +0 -10
  497. data/ext/third_party/asio/asio/src/examples/cpp11/timers/time_t_timer.cpp +0 -106
  498. data/ext/third_party/asio/asio/src/examples/cpp14/Makefile.am +0 -64
  499. data/ext/third_party/asio/asio/src/examples/cpp14/echo/.gitignore +0 -11
  500. data/ext/third_party/asio/asio/src/examples/cpp14/echo/async_tcp_echo_server.cpp +0 -117
  501. data/ext/third_party/asio/asio/src/examples/cpp14/echo/async_udp_echo_server.cpp +0 -83
  502. data/ext/third_party/asio/asio/src/examples/cpp14/echo/blocking_tcp_echo_client.cpp +0 -55
  503. data/ext/third_party/asio/asio/src/examples/cpp14/echo/blocking_tcp_echo_server.cpp +0 -77
  504. data/ext/third_party/asio/asio/src/examples/cpp14/echo/blocking_udp_echo_client.cpp +0 -59
  505. data/ext/third_party/asio/asio/src/examples/cpp14/echo/blocking_udp_echo_server.cpp +0 -53
  506. data/ext/third_party/asio/asio/src/examples/cpp14/executors/.gitignore +0 -6
  507. data/ext/third_party/asio/asio/src/examples/cpp14/executors/actor.cpp +0 -281
  508. data/ext/third_party/asio/asio/src/examples/cpp14/executors/async_1.cpp +0 -47
  509. data/ext/third_party/asio/asio/src/examples/cpp14/executors/async_2.cpp +0 -68
  510. data/ext/third_party/asio/asio/src/examples/cpp14/executors/bank_account_1.cpp +0 -54
  511. data/ext/third_party/asio/asio/src/examples/cpp14/executors/bank_account_2.cpp +0 -53
  512. data/ext/third_party/asio/asio/src/examples/cpp14/executors/fork_join.cpp +0 -327
  513. data/ext/third_party/asio/asio/src/examples/cpp14/executors/pipeline.cpp +0 -294
  514. data/ext/third_party/asio/asio/src/examples/cpp14/executors/priority_scheduler.cpp +0 -173
  515. data/ext/third_party/asio/asio/src/examples/cpp14/iostreams/.gitignore +0 -11
  516. data/ext/third_party/asio/asio/src/examples/cpp14/iostreams/http_client.cpp +0 -91
  517. data/ext/third_party/asio/asio/src/examples/cpp14/operations/.gitignore +0 -10
  518. data/ext/third_party/asio/asio/src/examples/cpp14/operations/composed_1.cpp +0 -113
  519. data/ext/third_party/asio/asio/src/examples/cpp14/operations/composed_2.cpp +0 -131
  520. data/ext/third_party/asio/asio/src/examples/cpp14/operations/composed_3.cpp +0 -186
  521. data/ext/third_party/asio/asio/src/examples/cpp14/operations/composed_4.cpp +0 -201
  522. data/ext/third_party/asio/asio/src/examples/cpp14/operations/composed_5.cpp +0 -238
  523. data/ext/third_party/asio/asio/src/examples/cpp14/operations/composed_6.cpp +0 -298
  524. data/ext/third_party/asio/asio/src/examples/cpp14/operations/composed_7.cpp +0 -219
  525. data/ext/third_party/asio/asio/src/examples/cpp14/operations/composed_8.cpp +0 -212
  526. data/ext/third_party/asio/asio/src/examples/cpp17/Makefile.am +0 -8
  527. data/ext/third_party/asio/asio/src/examples/cpp17/coroutines_ts/chat_server.cpp +0 -225
  528. data/ext/third_party/asio/asio/src/examples/cpp17/coroutines_ts/echo_server.cpp +0 -76
  529. data/ext/third_party/asio/asio/src/examples/cpp17/coroutines_ts/echo_server_with_default.cpp +0 -78
  530. data/ext/third_party/asio/asio/src/examples/cpp17/coroutines_ts/range_based_for.cpp +0 -107
  531. data/ext/third_party/asio/asio/src/examples/cpp17/coroutines_ts/refactored_echo_server.cpp +0 -85
  532. data/ext/third_party/asio/asio/src/tests/.gitignore +0 -11
  533. data/ext/third_party/asio/asio/src/tests/Makefile.am +0 -432
  534. data/ext/third_party/asio/asio/src/tests/latency/.gitignore +0 -11
  535. data/ext/third_party/asio/asio/src/tests/latency/allocator.hpp +0 -52
  536. data/ext/third_party/asio/asio/src/tests/latency/high_res_clock.hpp +0 -53
  537. data/ext/third_party/asio/asio/src/tests/latency/tcp_client.cpp +0 -124
  538. data/ext/third_party/asio/asio/src/tests/latency/tcp_server.cpp +0 -114
  539. data/ext/third_party/asio/asio/src/tests/latency/udp_client.cpp +0 -104
  540. data/ext/third_party/asio/asio/src/tests/latency/udp_server.cpp +0 -125
  541. data/ext/third_party/asio/asio/src/tests/performance/.gitignore +0 -11
  542. data/ext/third_party/asio/asio/src/tests/performance/client.cpp +0 -286
  543. data/ext/third_party/asio/asio/src/tests/performance/handler_allocator.hpp +0 -112
  544. data/ext/third_party/asio/asio/src/tests/performance/server.cpp +0 -233
  545. data/ext/third_party/asio/asio/src/tests/unit/.gitignore +0 -75
  546. data/ext/third_party/asio/asio/src/tests/unit/archetypes/async_ops.hpp +0 -415
  547. data/ext/third_party/asio/asio/src/tests/unit/archetypes/async_result.hpp +0 -94
  548. data/ext/third_party/asio/asio/src/tests/unit/archetypes/gettable_socket_option.hpp +0 -54
  549. data/ext/third_party/asio/asio/src/tests/unit/archetypes/io_control_command.hpp +0 -32
  550. data/ext/third_party/asio/asio/src/tests/unit/archetypes/settable_socket_option.hpp +0 -49
  551. data/ext/third_party/asio/asio/src/tests/unit/associated_allocator.cpp +0 -25
  552. data/ext/third_party/asio/asio/src/tests/unit/associated_executor.cpp +0 -25
  553. data/ext/third_party/asio/asio/src/tests/unit/async_result.cpp +0 -25
  554. data/ext/third_party/asio/asio/src/tests/unit/awaitable.cpp +0 -25
  555. data/ext/third_party/asio/asio/src/tests/unit/basic_datagram_socket.cpp +0 -25
  556. data/ext/third_party/asio/asio/src/tests/unit/basic_deadline_timer.cpp +0 -25
  557. data/ext/third_party/asio/asio/src/tests/unit/basic_raw_socket.cpp +0 -25
  558. data/ext/third_party/asio/asio/src/tests/unit/basic_seq_packet_socket.cpp +0 -25
  559. data/ext/third_party/asio/asio/src/tests/unit/basic_serial_port.cpp +0 -26
  560. data/ext/third_party/asio/asio/src/tests/unit/basic_signal_set.cpp +0 -25
  561. data/ext/third_party/asio/asio/src/tests/unit/basic_socket.cpp +0 -25
  562. data/ext/third_party/asio/asio/src/tests/unit/basic_socket_acceptor.cpp +0 -25
  563. data/ext/third_party/asio/asio/src/tests/unit/basic_stream_socket.cpp +0 -25
  564. data/ext/third_party/asio/asio/src/tests/unit/basic_streambuf.cpp +0 -25
  565. data/ext/third_party/asio/asio/src/tests/unit/basic_waitable_timer.cpp +0 -25
  566. data/ext/third_party/asio/asio/src/tests/unit/bind_executor.cpp +0 -25
  567. data/ext/third_party/asio/asio/src/tests/unit/buffer.cpp +0 -830
  568. data/ext/third_party/asio/asio/src/tests/unit/buffered_read_stream.cpp +0 -338
  569. data/ext/third_party/asio/asio/src/tests/unit/buffered_stream.cpp +0 -364
  570. data/ext/third_party/asio/asio/src/tests/unit/buffered_write_stream.cpp +0 -353
  571. data/ext/third_party/asio/asio/src/tests/unit/buffers_iterator.cpp +0 -292
  572. data/ext/third_party/asio/asio/src/tests/unit/co_spawn.cpp +0 -25
  573. data/ext/third_party/asio/asio/src/tests/unit/completion_condition.cpp +0 -25
  574. data/ext/third_party/asio/asio/src/tests/unit/compose.cpp +0 -185
  575. data/ext/third_party/asio/asio/src/tests/unit/connect.cpp +0 -1190
  576. data/ext/third_party/asio/asio/src/tests/unit/coroutine.cpp +0 -112
  577. data/ext/third_party/asio/asio/src/tests/unit/deadline_timer.cpp +0 -392
  578. data/ext/third_party/asio/asio/src/tests/unit/defer.cpp +0 -25
  579. data/ext/third_party/asio/asio/src/tests/unit/detached.cpp +0 -25
  580. data/ext/third_party/asio/asio/src/tests/unit/dispatch.cpp +0 -25
  581. data/ext/third_party/asio/asio/src/tests/unit/error.cpp +0 -89
  582. data/ext/third_party/asio/asio/src/tests/unit/execution_context.cpp +0 -25
  583. data/ext/third_party/asio/asio/src/tests/unit/executor.cpp +0 -25
  584. data/ext/third_party/asio/asio/src/tests/unit/executor_work_guard.cpp +0 -25
  585. data/ext/third_party/asio/asio/src/tests/unit/generic/.gitignore +0 -14
  586. data/ext/third_party/asio/asio/src/tests/unit/generic/basic_endpoint.cpp +0 -25
  587. data/ext/third_party/asio/asio/src/tests/unit/generic/datagram_protocol.cpp +0 -263
  588. data/ext/third_party/asio/asio/src/tests/unit/generic/raw_protocol.cpp +0 -263
  589. data/ext/third_party/asio/asio/src/tests/unit/generic/seq_packet_protocol.cpp +0 -205
  590. data/ext/third_party/asio/asio/src/tests/unit/generic/stream_protocol.cpp +0 -248
  591. data/ext/third_party/asio/asio/src/tests/unit/high_resolution_timer.cpp +0 -30
  592. data/ext/third_party/asio/asio/src/tests/unit/io_context.cpp +0 -362
  593. data/ext/third_party/asio/asio/src/tests/unit/io_context_strand.cpp +0 -325
  594. data/ext/third_party/asio/asio/src/tests/unit/ip/.gitignore +0 -27
  595. data/ext/third_party/asio/asio/src/tests/unit/ip/address.cpp +0 -144
  596. data/ext/third_party/asio/asio/src/tests/unit/ip/basic_endpoint.cpp +0 -25
  597. data/ext/third_party/asio/asio/src/tests/unit/ip/basic_resolver.cpp +0 -25
  598. data/ext/third_party/asio/asio/src/tests/unit/ip/basic_resolver_entry.cpp +0 -25
  599. data/ext/third_party/asio/asio/src/tests/unit/ip/basic_resolver_iterator.cpp +0 -25
  600. data/ext/third_party/asio/asio/src/tests/unit/ip/basic_resolver_query.cpp +0 -25
  601. data/ext/third_party/asio/asio/src/tests/unit/ip/host_name.cpp +0 -55
  602. data/ext/third_party/asio/asio/src/tests/unit/ip/icmp.cpp +0 -577
  603. data/ext/third_party/asio/asio/src/tests/unit/ip/multicast.cpp +0 -363
  604. data/ext/third_party/asio/asio/src/tests/unit/ip/network_v4.cpp +0 -314
  605. data/ext/third_party/asio/asio/src/tests/unit/ip/network_v6.cpp +0 -238
  606. data/ext/third_party/asio/asio/src/tests/unit/ip/resolver_query_base.cpp +0 -25
  607. data/ext/third_party/asio/asio/src/tests/unit/ip/tcp.cpp +0 -1346
  608. data/ext/third_party/asio/asio/src/tests/unit/ip/udp.cpp +0 -673
  609. data/ext/third_party/asio/asio/src/tests/unit/ip/unicast.cpp +0 -171
  610. data/ext/third_party/asio/asio/src/tests/unit/ip/v6_only.cpp +0 -135
  611. data/ext/third_party/asio/asio/src/tests/unit/is_read_buffered.cpp +0 -129
  612. data/ext/third_party/asio/asio/src/tests/unit/is_write_buffered.cpp +0 -129
  613. data/ext/third_party/asio/asio/src/tests/unit/local/.gitignore +0 -13
  614. data/ext/third_party/asio/asio/src/tests/unit/local/basic_endpoint.cpp +0 -25
  615. data/ext/third_party/asio/asio/src/tests/unit/local/connect_pair.cpp +0 -76
  616. data/ext/third_party/asio/asio/src/tests/unit/local/datagram_protocol.cpp +0 -242
  617. data/ext/third_party/asio/asio/src/tests/unit/local/stream_protocol.cpp +0 -219
  618. data/ext/third_party/asio/asio/src/tests/unit/packaged_task.cpp +0 -25
  619. data/ext/third_party/asio/asio/src/tests/unit/placeholders.cpp +0 -25
  620. data/ext/third_party/asio/asio/src/tests/unit/posix/.gitignore +0 -14
  621. data/ext/third_party/asio/asio/src/tests/unit/posix/basic_descriptor.cpp +0 -25
  622. data/ext/third_party/asio/asio/src/tests/unit/posix/basic_stream_descriptor.cpp +0 -25
  623. data/ext/third_party/asio/asio/src/tests/unit/posix/descriptor.cpp +0 -25
  624. data/ext/third_party/asio/asio/src/tests/unit/posix/descriptor_base.cpp +0 -25
  625. data/ext/third_party/asio/asio/src/tests/unit/posix/stream_descriptor.cpp +0 -183
  626. data/ext/third_party/asio/asio/src/tests/unit/post.cpp +0 -25
  627. data/ext/third_party/asio/asio/src/tests/unit/read.cpp +0 -4997
  628. data/ext/third_party/asio/asio/src/tests/unit/read_at.cpp +0 -7502
  629. data/ext/third_party/asio/asio/src/tests/unit/read_until.cpp +0 -1658
  630. data/ext/third_party/asio/asio/src/tests/unit/redirect_error.cpp +0 -25
  631. data/ext/third_party/asio/asio/src/tests/unit/serial_port.cpp +0 -173
  632. data/ext/third_party/asio/asio/src/tests/unit/serial_port_base.cpp +0 -99
  633. data/ext/third_party/asio/asio/src/tests/unit/signal_set.cpp +0 -95
  634. data/ext/third_party/asio/asio/src/tests/unit/socket_base.cpp +0 -650
  635. data/ext/third_party/asio/asio/src/tests/unit/ssl/.gitignore +0 -15
  636. data/ext/third_party/asio/asio/src/tests/unit/ssl/context.cpp +0 -25
  637. data/ext/third_party/asio/asio/src/tests/unit/ssl/context_base.cpp +0 -25
  638. data/ext/third_party/asio/asio/src/tests/unit/ssl/error.cpp +0 -25
  639. data/ext/third_party/asio/asio/src/tests/unit/ssl/host_name_verification.cpp +0 -25
  640. data/ext/third_party/asio/asio/src/tests/unit/ssl/rfc2818_verification.cpp +0 -25
  641. data/ext/third_party/asio/asio/src/tests/unit/ssl/stream.cpp +0 -191
  642. data/ext/third_party/asio/asio/src/tests/unit/ssl/stream_base.cpp +0 -25
  643. data/ext/third_party/asio/asio/src/tests/unit/steady_timer.cpp +0 -30
  644. data/ext/third_party/asio/asio/src/tests/unit/strand.cpp +0 -263
  645. data/ext/third_party/asio/asio/src/tests/unit/streambuf.cpp +0 -62
  646. data/ext/third_party/asio/asio/src/tests/unit/system_context.cpp +0 -30
  647. data/ext/third_party/asio/asio/src/tests/unit/system_executor.cpp +0 -30
  648. data/ext/third_party/asio/asio/src/tests/unit/system_timer.cpp +0 -399
  649. data/ext/third_party/asio/asio/src/tests/unit/this_coro.cpp +0 -25
  650. data/ext/third_party/asio/asio/src/tests/unit/thread.cpp +0 -25
  651. data/ext/third_party/asio/asio/src/tests/unit/time_traits.cpp +0 -25
  652. data/ext/third_party/asio/asio/src/tests/unit/ts/.gitignore +0 -17
  653. data/ext/third_party/asio/asio/src/tests/unit/ts/buffer.cpp +0 -30
  654. data/ext/third_party/asio/asio/src/tests/unit/ts/executor.cpp +0 -30
  655. data/ext/third_party/asio/asio/src/tests/unit/ts/internet.cpp +0 -30
  656. data/ext/third_party/asio/asio/src/tests/unit/ts/io_context.cpp +0 -30
  657. data/ext/third_party/asio/asio/src/tests/unit/ts/net.cpp +0 -30
  658. data/ext/third_party/asio/asio/src/tests/unit/ts/netfwd.cpp +0 -33
  659. data/ext/third_party/asio/asio/src/tests/unit/ts/socket.cpp +0 -30
  660. data/ext/third_party/asio/asio/src/tests/unit/ts/timer.cpp +0 -30
  661. data/ext/third_party/asio/asio/src/tests/unit/unit_test.hpp +0 -175
  662. data/ext/third_party/asio/asio/src/tests/unit/use_awaitable.cpp +0 -25
  663. data/ext/third_party/asio/asio/src/tests/unit/use_future.cpp +0 -670
  664. data/ext/third_party/asio/asio/src/tests/unit/uses_executor.cpp +0 -25
  665. data/ext/third_party/asio/asio/src/tests/unit/wait_traits.cpp +0 -25
  666. data/ext/third_party/asio/asio/src/tests/unit/windows/.gitignore +0 -18
  667. data/ext/third_party/asio/asio/src/tests/unit/windows/basic_object_handle.cpp +0 -25
  668. data/ext/third_party/asio/asio/src/tests/unit/windows/basic_overlapped_handle.cpp +0 -25
  669. data/ext/third_party/asio/asio/src/tests/unit/windows/basic_random_access_handle.cpp +0 -25
  670. data/ext/third_party/asio/asio/src/tests/unit/windows/basic_stream_handle.cpp +0 -25
  671. data/ext/third_party/asio/asio/src/tests/unit/windows/object_handle.cpp +0 -130
  672. data/ext/third_party/asio/asio/src/tests/unit/windows/overlapped_handle.cpp +0 -26
  673. data/ext/third_party/asio/asio/src/tests/unit/windows/overlapped_ptr.cpp +0 -107
  674. data/ext/third_party/asio/asio/src/tests/unit/windows/random_access_handle.cpp +0 -155
  675. data/ext/third_party/asio/asio/src/tests/unit/windows/stream_handle.cpp +0 -148
  676. data/ext/third_party/asio/asio/src/tests/unit/write.cpp +0 -4904
  677. data/ext/third_party/asio/asio/src/tests/unit/write_at.cpp +0 -7563
  678. data/ext/third_party/asio/asio/src/tools/handlerviz.pl +0 -299
  679. data/ext/third_party/gsl/tests/CMakeLists.txt +0 -267
  680. data/ext/third_party/gsl/tests/CMakeLists.txt.in +0 -14
  681. data/ext/third_party/gsl/tests/algorithm_tests.cpp +0 -227
  682. data/ext/third_party/gsl/tests/assertion_tests.cpp +0 -61
  683. data/ext/third_party/gsl/tests/at_tests.cpp +0 -135
  684. data/ext/third_party/gsl/tests/bounds_tests.cpp +0 -102
  685. data/ext/third_party/gsl/tests/byte_tests.cpp +0 -129
  686. data/ext/third_party/gsl/tests/multi_span_tests.cpp +0 -1866
  687. data/ext/third_party/gsl/tests/no_exception_ensure_tests.cpp +0 -48
  688. data/ext/third_party/gsl/tests/notnull_tests.cpp +0 -535
  689. data/ext/third_party/gsl/tests/owner_tests.cpp +0 -43
  690. data/ext/third_party/gsl/tests/span_compatibility_tests.cpp +0 -1021
  691. data/ext/third_party/gsl/tests/span_ext_tests.cpp +0 -360
  692. data/ext/third_party/gsl/tests/span_tests.cpp +0 -1244
  693. data/ext/third_party/gsl/tests/strict_notnull_tests.cpp +0 -190
  694. data/ext/third_party/gsl/tests/strided_span_tests.cpp +0 -790
  695. data/ext/third_party/gsl/tests/string_span_tests.cpp +0 -1217
  696. data/ext/third_party/gsl/tests/utils_tests.cpp +0 -129
  697. data/ext/third_party/http_parser/contrib/parsertrace.c +0 -157
  698. data/ext/third_party/http_parser/contrib/url_parser.c +0 -47
  699. data/ext/third_party/http_parser/fuzzers/fuzz_parser.c +0 -26
  700. data/ext/third_party/http_parser/fuzzers/fuzz_url.c +0 -14
  701. data/ext/third_party/json/contrib/nlohmann.cpp +0 -48
  702. data/ext/third_party/json/contrib/nlohmann/from_value.hpp +0 -62
  703. data/ext/third_party/json/contrib/nlohmann/json.hpp +0 -18928
  704. data/ext/third_party/json/contrib/nlohmann/to_value.hpp +0 -109
  705. data/ext/third_party/json/doc/Advanced-Use-Cases.md +0 -83
  706. data/ext/third_party/json/doc/Batteries-Included.md +0 -212
  707. data/ext/third_party/json/doc/Binding-Traits.md +0 -319
  708. data/ext/third_party/json/doc/Changelog.md +0 -31
  709. data/ext/third_party/json/doc/Common-Use-Cases.md +0 -148
  710. data/ext/third_party/json/doc/Design-Decisions.md +0 -36
  711. data/ext/third_party/json/doc/Events-Interface.md +0 -140
  712. data/ext/third_party/json/doc/Getting-Started.md +0 -19
  713. data/ext/third_party/json/doc/Instance-Sharing.md +0 -163
  714. data/ext/third_party/json/doc/Interoperability.md +0 -75
  715. data/ext/third_party/json/doc/Overview.md +0 -24
  716. data/ext/third_party/json/doc/Overview.png +0 -0
  717. data/ext/third_party/json/doc/Parser-Interface.md +0 -84
  718. data/ext/third_party/json/doc/README.md +0 -78
  719. data/ext/third_party/json/doc/Scratchpad.md +0 -25
  720. data/ext/third_party/json/doc/Type-Traits.md +0 -364
  721. data/ext/third_party/json/doc/Types.png +0 -0
  722. data/ext/third_party/json/doc/Value-Class.md +0 -525
  723. data/ext/third_party/json/src/example/json/CMakeLists.txt +0 -67
  724. data/ext/third_party/json/src/example/json/cbor_to_jaxn.cpp +0 -18
  725. data/ext/third_party/json/src/example/json/cbor_to_json.cpp +0 -18
  726. data/ext/third_party/json/src/example/json/cbor_to_msgpack.cpp +0 -18
  727. data/ext/third_party/json/src/example/json/cbor_to_pretty_jaxn.cpp +0 -18
  728. data/ext/third_party/json/src/example/json/cbor_to_pretty_json.cpp +0 -18
  729. data/ext/third_party/json/src/example/json/cbor_to_ubjson.cpp +0 -18
  730. data/ext/third_party/json/src/example/json/jaxn_to_cbor.cpp +0 -18
  731. data/ext/third_party/json/src/example/json/jaxn_to_cplusplus.cpp +0 -249
  732. data/ext/third_party/json/src/example/json/jaxn_to_jaxn.cpp +0 -18
  733. data/ext/third_party/json/src/example/json/jaxn_to_msgpack.cpp +0 -18
  734. data/ext/third_party/json/src/example/json/jaxn_to_pretty_jaxn.cpp +0 -18
  735. data/ext/third_party/json/src/example/json/jaxn_to_ubjson.cpp +0 -18
  736. data/ext/third_party/json/src/example/json/json_to_cbor.cpp +0 -18
  737. data/ext/third_party/json/src/example/json/json_to_json.cpp +0 -18
  738. data/ext/third_party/json/src/example/json/json_to_msgpack.cpp +0 -18
  739. data/ext/third_party/json/src/example/json/json_to_pretty_json.cpp +0 -18
  740. data/ext/third_party/json/src/example/json/json_to_ubjson.cpp +0 -18
  741. data/ext/third_party/json/src/example/json/msgpack_to_cbor.cpp +0 -18
  742. data/ext/third_party/json/src/example/json/msgpack_to_jaxn.cpp +0 -18
  743. data/ext/third_party/json/src/example/json/msgpack_to_json.cpp +0 -18
  744. data/ext/third_party/json/src/example/json/msgpack_to_pretty_jaxn.cpp +0 -18
  745. data/ext/third_party/json/src/example/json/msgpack_to_pretty_json.cpp +0 -18
  746. data/ext/third_party/json/src/example/json/msgpack_to_ubjson.cpp +0 -18
  747. data/ext/third_party/json/src/example/json/printf_doubles.cpp +0 -51
  748. data/ext/third_party/json/src/example/json/ubjson_to_cbor.cpp +0 -18
  749. data/ext/third_party/json/src/example/json/ubjson_to_jaxn.cpp +0 -18
  750. data/ext/third_party/json/src/example/json/ubjson_to_json.cpp +0 -18
  751. data/ext/third_party/json/src/example/json/ubjson_to_msgpack.cpp +0 -18
  752. data/ext/third_party/json/src/example/json/ubjson_to_pretty_jaxn.cpp +0 -18
  753. data/ext/third_party/json/src/example/json/ubjson_to_pretty_json.cpp +0 -18
  754. data/ext/third_party/json/src/example/json/validate_event_order.cpp +0 -27
  755. data/ext/third_party/json/src/example/json/validate_integer.cpp +0 -56
  756. data/ext/third_party/json/src/perf/json/bench_mark.hpp +0 -43
  757. data/ext/third_party/json/src/perf/json/benchmark.cpp +0 -34
  758. data/ext/third_party/json/src/perf/json/parse_file.cpp +0 -17
  759. data/ext/third_party/json/src/perf/json/pretty_print_file.cpp +0 -19
  760. data/ext/third_party/json/src/perf/json/print_double.cpp +0 -34
  761. data/ext/third_party/json/src/perf/json/print_file.cpp +0 -19
  762. data/ext/third_party/json/src/perf/json/sizes.cpp +0 -24
  763. data/ext/third_party/json/src/perf/json/syntax_only.cpp +0 -27
  764. data/ext/third_party/json/src/test/json/CMakeLists.txt +0 -97
  765. data/ext/third_party/json/src/test/json/big_list_of_naughty_strings.cpp +0 -43
  766. data/ext/third_party/json/src/test/json/binding_array.cpp +0 -549
  767. data/ext/third_party/json/src/test/json/binding_factory.cpp +0 -265
  768. data/ext/third_party/json/src/test/json/binding_object.cpp +0 -208
  769. data/ext/third_party/json/src/test/json/binding_versions.cpp +0 -95
  770. data/ext/third_party/json/src/test/json/cbor.cpp +0 -149
  771. data/ext/third_party/json/src/test/json/cbor_parts_parser.cpp +0 -36
  772. data/ext/third_party/json/src/test/json/contrib_diff.cpp +0 -43
  773. data/ext/third_party/json/src/test/json/contrib_get.cpp +0 -42
  774. data/ext/third_party/json/src/test/json/contrib_patch_add.cpp +0 -75
  775. data/ext/third_party/json/src/test/json/contrib_patch_copy.cpp +0 -113
  776. data/ext/third_party/json/src/test/json/contrib_patch_move.cpp +0 -97
  777. data/ext/third_party/json/src/test/json/contrib_patch_remove.cpp +0 -85
  778. data/ext/third_party/json/src/test/json/contrib_patch_replace.cpp +0 -79
  779. data/ext/third_party/json/src/test/json/contrib_patch_test.cpp +0 -69
  780. data/ext/third_party/json/src/test/json/contrib_position.cpp +0 -48
  781. data/ext/third_party/json/src/test/json/contrib_reference.cpp +0 -44
  782. data/ext/third_party/json/src/test/json/contrib_schema.cpp +0 -132
  783. data/ext/third_party/json/src/test/json/contrib_traits.cpp +0 -258
  784. data/ext/third_party/json/src/test/json/double.cpp +0 -182
  785. data/ext/third_party/json/src/test/json/enable_implicit_constructor.cpp +0 -54
  786. data/ext/third_party/json/src/test/json/escape.cpp +0 -42
  787. data/ext/third_party/json/src/test/json/events_binary_to.cpp +0 -56
  788. data/ext/third_party/json/src/test/json/events_compare.cpp +0 -433
  789. data/ext/third_party/json/src/test/json/events_debug.cpp +0 -24
  790. data/ext/third_party/json/src/test/json/events_hash.cpp +0 -65
  791. data/ext/third_party/json/src/test/json/events_to_stream.cpp +0 -28
  792. data/ext/third_party/json/src/test/json/events_to_string.cpp +0 -25
  793. data/ext/third_party/json/src/test/json/include_json.cpp +0 -14
  794. data/ext/third_party/json/src/test/json/integer.cpp +0 -118
  795. data/ext/third_party/json/src/test/json/jaxn_ostream.cpp +0 -76
  796. data/ext/third_party/json/src/test/json/jaxn_parse.cpp +0 -239
  797. data/ext/third_party/json/src/test/json/jaxn_parts_parser.cpp +0 -220
  798. data/ext/third_party/json/src/test/json/json_ostream.cpp +0 -102
  799. data/ext/third_party/json/src/test/json/json_parse.cpp +0 -153
  800. data/ext/third_party/json/src/test/json/json_parts_parser.cpp +0 -124
  801. data/ext/third_party/json/src/test/json/json_pointer.cpp +0 -176
  802. data/ext/third_party/json/src/test/json/key_camel_case_to_snake_case.cpp +0 -38
  803. data/ext/third_party/json/src/test/json/key_snake_case_to_camel_case.cpp +0 -33
  804. data/ext/third_party/json/src/test/json/literal.cpp +0 -18
  805. data/ext/third_party/json/src/test/json/main.hpp +0 -20
  806. data/ext/third_party/json/src/test/json/make_events.hpp +0 -362
  807. data/ext/third_party/json/src/test/json/msgpack.cpp +0 -136
  808. data/ext/third_party/json/src/test/json/object_construction.cpp +0 -167
  809. data/ext/third_party/json/src/test/json/opaque_pointer.cpp +0 -192
  810. data/ext/third_party/json/src/test/json/operators.cpp +0 -494
  811. data/ext/third_party/json/src/test/json/optional.cpp +0 -79
  812. data/ext/third_party/json/src/test/json/public_base.cpp +0 -142
  813. data/ext/third_party/json/src/test/json/self_contained.cpp +0 -106
  814. data/ext/third_party/json/src/test/json/sha256.cpp +0 -38
  815. data/ext/third_party/json/src/test/json/string_view.cpp +0 -70
  816. data/ext/third_party/json/src/test/json/temporary_parsing.cpp +0 -339
  817. data/ext/third_party/json/src/test/json/test.hpp +0 -74
  818. data/ext/third_party/json/src/test/json/test_events.hpp +0 -250
  819. data/ext/third_party/json/src/test/json/test_types.hpp +0 -557
  820. data/ext/third_party/json/src/test/json/test_unhex.hpp +0 -42
  821. data/ext/third_party/json/src/test/json/type.cpp +0 -35
  822. data/ext/third_party/json/src/test/json/ubjson.cpp +0 -119
  823. data/ext/third_party/json/src/test/json/uri_fragment.cpp +0 -52
  824. data/ext/third_party/json/src/test/json/validate_event_interfaces.cpp +0 -177
  825. data/ext/third_party/json/src/test/json/validate_utf8.cpp +0 -37
  826. data/ext/third_party/json/src/test/json/value_access.cpp +0 -144
  827. data/ext/third_party/json/src/test/json/value_basics.cpp +0 -241
  828. data/ext/third_party/json/src/test/json/value_create.cpp +0 -372
  829. data/ext/third_party/json/src/test/json/value_ptr.cpp +0 -33
  830. data/ext/third_party/json/src/test/json/value_subscript.cpp +0 -89
  831. data/ext/third_party/json/src/test/json/with_arguments.cpp +0 -98
  832. data/ext/third_party/json/tests/blns.json +0 -496
  833. data/ext/third_party/json/tests/canada.json +0 -9
  834. data/ext/third_party/json/tests/citm_catalog.json +0 -50469
  835. data/ext/third_party/json/tests/draft4/additionalItems.json +0 -82
  836. data/ext/third_party/json/tests/draft4/additionalProperties.json +0 -88
  837. data/ext/third_party/json/tests/draft4/allOf.json +0 -112
  838. data/ext/third_party/json/tests/draft4/anyOf.json +0 -68
  839. data/ext/third_party/json/tests/draft4/default.json +0 -49
  840. data/ext/third_party/json/tests/draft4/definitions.json +0 -32
  841. data/ext/third_party/json/tests/draft4/dependencies.json +0 -113
  842. data/ext/third_party/json/tests/draft4/enum.json +0 -72
  843. data/ext/third_party/json/tests/draft4/items.json +0 -46
  844. data/ext/third_party/json/tests/draft4/maxItems.json +0 -28
  845. data/ext/third_party/json/tests/draft4/maxLength.json +0 -33
  846. data/ext/third_party/json/tests/draft4/maxProperties.json +0 -28
  847. data/ext/third_party/json/tests/draft4/maximum.json +0 -42
  848. data/ext/third_party/json/tests/draft4/minItems.json +0 -28
  849. data/ext/third_party/json/tests/draft4/minLength.json +0 -33
  850. data/ext/third_party/json/tests/draft4/minProperties.json +0 -28
  851. data/ext/third_party/json/tests/draft4/minimum.json +0 -42
  852. data/ext/third_party/json/tests/draft4/multipleOf.json +0 -60
  853. data/ext/third_party/json/tests/draft4/not.json +0 -96
  854. data/ext/third_party/json/tests/draft4/oneOf.json +0 -68
  855. data/ext/third_party/json/tests/draft4/optional/bignum.json +0 -107
  856. data/ext/third_party/json/tests/draft4/optional/format.json +0 -148
  857. data/ext/third_party/json/tests/draft4/optional/zeroTerminatedFloats.json +0 -15
  858. data/ext/third_party/json/tests/draft4/pattern.json +0 -34
  859. data/ext/third_party/json/tests/draft4/patternProperties.json +0 -110
  860. data/ext/third_party/json/tests/draft4/properties.json +0 -92
  861. data/ext/third_party/json/tests/draft4/ref.json +0 -179
  862. data/ext/third_party/json/tests/draft4/refRemote.json +0 -74
  863. data/ext/third_party/json/tests/draft4/required.json +0 -44
  864. data/ext/third_party/json/tests/draft4/type.json +0 -345
  865. data/ext/third_party/json/tests/draft4/uniqueItems.json +0 -79
  866. data/ext/third_party/json/tests/taocpp/binary.jaxn +0 -4
  867. data/ext/third_party/json/tests/taocpp/dateTime.json +0 -108
  868. data/ext/third_party/json/tests/taocpp/make_events.cbor +0 -0
  869. data/ext/third_party/json/tests/taocpp/number.json +0 -682
  870. data/ext/third_party/json/tests/taocpp/position.json +0 -8
  871. data/ext/third_party/json/tests/taocpp/schema.json +0 -378
  872. data/ext/third_party/json/tests/twitter.json +0 -15482
  873. data/ext/third_party/spdlog/bench/CMakeLists.txt +0 -25
  874. data/ext/third_party/spdlog/bench/async_bench.cpp +0 -179
  875. data/ext/third_party/spdlog/bench/bench.cpp +0 -238
  876. data/ext/third_party/spdlog/bench/formatter-bench.cpp +0 -80
  877. data/ext/third_party/spdlog/bench/latency.cpp +0 -166
  878. data/ext/third_party/spdlog/bench/utils.h +0 -34
  879. data/ext/third_party/spdlog/example/CMakeLists.txt +0 -23
  880. data/ext/third_party/spdlog/example/example.cpp +0 -282
  881. data/ext/third_party/spdlog/logos/jetbrains-variant-4.svg +0 -43
  882. data/ext/third_party/spdlog/scripts/extract_version.py +0 -17
  883. data/ext/third_party/spdlog/scripts/format.sh +0 -16
  884. data/ext/third_party/spdlog/tests/CMakeLists.txt +0 -70
  885. data/ext/third_party/spdlog/tests/catch.hpp +0 -15372
  886. data/ext/third_party/spdlog/tests/catch.license +0 -23
  887. data/ext/third_party/spdlog/tests/includes.h +0 -26
  888. data/ext/third_party/spdlog/tests/main.cpp +0 -2
  889. data/ext/third_party/spdlog/tests/test_async.cpp +0 -188
  890. data/ext/third_party/spdlog/tests/test_backtrace.cpp +0 -65
  891. data/ext/third_party/spdlog/tests/test_cfg.cpp +0 -93
  892. data/ext/third_party/spdlog/tests/test_create_dir.cpp +0 -80
  893. data/ext/third_party/spdlog/tests/test_daily_logger.cpp +0 -149
  894. data/ext/third_party/spdlog/tests/test_dup_filter.cpp +0 -88
  895. data/ext/third_party/spdlog/tests/test_errors.cpp +0 -118
  896. data/ext/third_party/spdlog/tests/test_eventlog.cpp +0 -71
  897. data/ext/third_party/spdlog/tests/test_file_helper.cpp +0 -102
  898. data/ext/third_party/spdlog/tests/test_file_logging.cpp +0 -98
  899. data/ext/third_party/spdlog/tests/test_fmt_helper.cpp +0 -86
  900. data/ext/third_party/spdlog/tests/test_macros.cpp +0 -60
  901. data/ext/third_party/spdlog/tests/test_misc.cpp +0 -271
  902. data/ext/third_party/spdlog/tests/test_mpmc_q.cpp +0 -106
  903. data/ext/third_party/spdlog/tests/test_pattern_formatter.cpp +0 -443
  904. data/ext/third_party/spdlog/tests/test_registry.cpp +0 -116
  905. data/ext/third_party/spdlog/tests/test_sink.h +0 -79
  906. data/ext/third_party/spdlog/tests/test_stdout_api.cpp +0 -98
  907. data/ext/third_party/spdlog/tests/test_systemd.cpp +0 -15
  908. data/ext/third_party/spdlog/tests/test_time_point.cpp +0 -36
  909. data/ext/third_party/spdlog/tests/utils.cpp +0 -125
  910. data/ext/third_party/spdlog/tests/utils.h +0 -18
  911. data/lib/couchbase/results.rb +0 -307
  912. data/rbi/couchbase.rbi +0 -79
@@ -1,238 +0,0 @@
1
- //
2
- // network_v6.cpp
3
- // ~~~~~~~~~~~~~~
4
- //
5
- // Copyright (c) 2003-2020 Christopher M. Kohlhoff (chris at kohlhoff dot com)
6
- // Copyright (c) 2014 Oliver Kowalke (oliver dot kowalke at gmail dot com)
7
- //
8
- // Distributed under the Boost Software License, Version 1.0. (See accompanying
9
- // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
10
- //
11
-
12
- // Disable autolinking for unit tests.
13
- #if !defined(BOOST_ALL_NO_LIB)
14
- #define BOOST_ALL_NO_LIB 1
15
- #endif // !defined(BOOST_ALL_NO_LIB)
16
-
17
- // Test that header file is self-contained.
18
- #include "asio/ip/network_v6.hpp"
19
-
20
- #include "../unit_test.hpp"
21
- #include <sstream>
22
-
23
- //------------------------------------------------------------------------------
24
-
25
- // ip_network_v6_compile test
26
- // ~~~~~~~~~~~~~~~~~~~~~~~~~~
27
- // The following test checks that all public member functions on the class
28
- // ip::network_v6 compile and link correctly. Runtime failures are ignored.
29
-
30
- namespace ip_network_v6_compile {
31
-
32
- void test()
33
- {
34
- using namespace asio;
35
- namespace ip = asio::ip;
36
-
37
- try
38
- {
39
- asio::error_code ec;
40
-
41
- // network_v6 constructors.
42
-
43
- ip::network_v6 net1(ip::make_address_v6("2001:370::10:7344"), 64);
44
- ip::network_v6 net2(ip::make_address_v6("2001:370::10:7345"), 96);
45
-
46
- // network_v6 functions.
47
-
48
- ip::address_v6 addr1 = net1.address();
49
- (void)addr1;
50
-
51
- unsigned short prefix_len = net1.prefix_length();
52
- (void)prefix_len;
53
-
54
- ip::address_v6 addr3 = net1.network();
55
- (void)addr3;
56
-
57
- ip::address_v6_range hosts = net1.hosts();
58
- (void)hosts;
59
-
60
- ip::network_v6 net3 = net1.canonical();
61
- (void)net3;
62
-
63
- bool b1 = net1.is_host();
64
- (void)b1;
65
-
66
- bool b2 = net1.is_subnet_of(net2);
67
- (void)b2;
68
-
69
- std::string s1 = net1.to_string();
70
- (void)s1;
71
-
72
- std::string s2 = net1.to_string(ec);
73
- (void)s2;
74
-
75
- // network_v6 comparisons.
76
-
77
- bool b3 = (net1 == net2);
78
- (void)b3;
79
-
80
- bool b4 = (net1 != net2);
81
- (void)b4;
82
-
83
- // network_v6 creation functions.
84
-
85
- net1 = ip::make_network_v6(ip::address_v6(), 24);
86
- net1 = ip::make_network_v6("10.0.0.0/8");
87
- net1 = ip::make_network_v6("10.0.0.0/8", ec);
88
- net1 = ip::make_network_v6(s1);
89
- net1 = ip::make_network_v6(s1, ec);
90
- #if defined(ASIO_HAS_STRING_VIEW)
91
- # if defined(ASIO_HAS_STD_STRING_VIEW)
92
- std::string_view string_view_value("0::0/8");
93
- # elif defined(ASIO_HAS_STD_EXPERIMENTAL_STRING_VIEW)
94
- std::experimental::string_view string_view_value("0::0/8");
95
- # endif // defined(ASIO_HAS_STD_EXPERIMENTAL_STRING_VIEW)
96
- net1 = ip::make_network_v6(string_view_value);
97
- net1 = ip::make_network_v6(string_view_value, ec);
98
- #endif // defined(ASIO_STD_STRING_VIEW)
99
-
100
- // network_v6 I/O.
101
-
102
- std::ostringstream os;
103
- os << net1;
104
-
105
- #if !defined(BOOST_NO_STD_WSTREAMBUF)
106
- std::wostringstream wos;
107
- wos << net1;
108
- #endif // !defined(BOOST_NO_STD_WSTREAMBUF)
109
- }
110
- catch (std::exception&)
111
- {
112
- }
113
- }
114
-
115
- } // namespace ip_network_v6_compile
116
-
117
- //------------------------------------------------------------------------------
118
-
119
- // ip_network_v6_runtime test
120
- // ~~~~~~~~~~~~~~~~~~~~~~~~~~
121
- // The following test checks that the various public member functions meet the
122
- // necessary postconditions.
123
-
124
- namespace ip_network_v6_runtime {
125
-
126
- void test()
127
- {
128
- using asio::ip::address_v6;
129
- using asio::ip::make_address_v6;
130
- using asio::ip::network_v6;
131
- using asio::ip::make_network_v6;
132
-
133
- address_v6 addr = make_address_v6("2001:370::10:7344");
134
-
135
- std::string msg;
136
- try
137
- {
138
- make_network_v6(addr, 129);
139
- }
140
- catch(std::out_of_range& ex)
141
- {
142
- msg = ex.what();
143
- }
144
- ASIO_CHECK(msg == std::string("prefix length too large"));
145
-
146
- // construct address range from address and prefix length
147
- ASIO_CHECK(network_v6(make_address_v6("2001:370::10:7344"), 128).network() == make_address_v6("2001:370::10:7344"));
148
- ASIO_CHECK(network_v6(make_address_v6("2001:370::10:7344"), 64).network() == make_address_v6("2001:370::"));
149
- ASIO_CHECK(network_v6(make_address_v6("2001:370::10:7344"), 27).network() == make_address_v6("2001:360::"));
150
-
151
- // construct address range from string in CIDR notation
152
- ASIO_CHECK(make_network_v6("2001:370::10:7344/128").network() == make_address_v6("2001:370::10:7344"));
153
- ASIO_CHECK(make_network_v6("2001:370::10:7344/64").network() == make_address_v6("2001:370::"));
154
- ASIO_CHECK(make_network_v6("2001:370::10:7344/27").network() == make_address_v6("2001:360::"));
155
-
156
- // construct network from invalid string
157
- asio::error_code ec;
158
- make_network_v6("a:b/24", ec);
159
- ASIO_CHECK(!!ec);
160
- make_network_v6("2001:370::10:7344/129", ec);
161
- ASIO_CHECK(!!ec);
162
- make_network_v6("2001:370::10:7344/-1", ec);
163
- ASIO_CHECK(!!ec);
164
- make_network_v6("2001:370::10:7344/", ec);
165
- ASIO_CHECK(!!ec);
166
- make_network_v6("2001:370::10:7344", ec);
167
- ASIO_CHECK(!!ec);
168
-
169
- // prefix length
170
- ASIO_CHECK(make_network_v6("2001:370::10:7344/128").prefix_length() == 128);
171
- ASIO_CHECK(network_v6(make_address_v6("2001:370::10:7344"), 27).prefix_length() == 27);
172
-
173
- // to string
174
- std::string a("2001:370::10:7344/64");
175
- ASIO_CHECK(make_network_v6(a.c_str()).to_string() == a);
176
- ASIO_CHECK(network_v6(make_address_v6("2001:370::10:7344"), 27).to_string() == std::string("2001:370::10:7344/27"));
177
-
178
- // return host part
179
- ASIO_CHECK(make_network_v6("2001:370::10:7344/64").address() == make_address_v6("2001:370::10:7344"));
180
- ASIO_CHECK(make_network_v6("2001:370::10:7344/27").address().to_string() == "2001:370::10:7344");
181
-
182
- // return network in CIDR notation
183
- ASIO_CHECK(make_network_v6("2001:370::10:7344/27").canonical().to_string() == "2001:360::/27");
184
-
185
- // is host
186
- ASIO_CHECK(make_network_v6("2001:370::10:7344/128").is_host());
187
- ASIO_CHECK(!make_network_v6("2001:370::10:7344/127").is_host());
188
-
189
- // is real subnet of
190
- ASIO_CHECK(make_network_v6("2001:370::10:3744/64").is_subnet_of(make_network_v6("2001:370::/16")));
191
- ASIO_CHECK(make_network_v6("2001:370::/64").is_subnet_of(make_network_v6("2001:370::/16")));
192
- ASIO_CHECK(make_network_v6("2001:0db8:85a3::/64").is_subnet_of(make_network_v6("2001:0d00::/24")));
193
-
194
- ASIO_CHECK(!make_network_v6("2001:370::10:3744/128").is_subnet_of(make_network_v6("2001:370::10:3744/128")));
195
- ASIO_CHECK(make_network_v6("2001:0db8:85a3::/64").is_subnet_of(make_network_v6("2001:0dc0::/24")));
196
-
197
- network_v6 r(make_network_v6("2001:370::/64"));
198
- ASIO_CHECK(!r.is_subnet_of(r));
199
-
200
- network_v6 net12(make_network_v6("2001:370::10:7344/64"));
201
- network_v6 net13(make_network_v6("2001:0db8::/127"));
202
- network_v6 net14(make_network_v6("2001:0db8::/125"));
203
- network_v6 net15(make_network_v6("2001:0db8::/119"));
204
-
205
- // network
206
- ASIO_CHECK(net12.network() == make_address_v6("2001:370::"));
207
- ASIO_CHECK(net13.network() == make_address_v6("2001:0db8::"));
208
- ASIO_CHECK(net14.network() == make_address_v6("2001:0db8::"));
209
- ASIO_CHECK(net15.network() == make_address_v6("2001:0db8::"));
210
-
211
- // iterator
212
- //ASIO_CHECK(std::distance(net12.hosts().begin(),net12.hosts().end()) == 18446744073709552000);
213
- ASIO_CHECK(std::distance(net13.hosts().begin(),net13.hosts().end()) == 2);
214
- ASIO_CHECK(std::distance(net14.hosts().begin(),net14.hosts().end()) == 8);
215
- ASIO_CHECK(std::distance(net15.hosts().begin(),net15.hosts().end()) == 512);
216
- ASIO_CHECK(*net12.hosts().begin() == make_address_v6("2001:0370::"));
217
- ASIO_CHECK(net12.hosts().end() != net12.hosts().find(make_address_v6("2001:0370::ffff:ffff:ffff:ffff")));
218
- ASIO_CHECK(*net13.hosts().begin() == make_address_v6("2001:0db8::"));
219
- ASIO_CHECK(net13.hosts().end() != net13.hosts().find(make_address_v6("2001:0db8::1")));
220
- ASIO_CHECK(net13.hosts().end() == net13.hosts().find(make_address_v6("2001:0db8::2")));
221
- ASIO_CHECK(*net14.hosts().begin() == make_address_v6("2001:0db8::"));
222
- ASIO_CHECK(net14.hosts().end() != net14.hosts().find(make_address_v6("2001:0db8::7")));
223
- ASIO_CHECK(net14.hosts().end() == net14.hosts().find(make_address_v6("2001:0db8::8")));
224
- ASIO_CHECK(*net15.hosts().begin() == make_address_v6("2001:0db8::"));
225
- ASIO_CHECK(net15.hosts().end() != net15.hosts().find(make_address_v6("2001:0db8::01ff")));
226
- ASIO_CHECK(net15.hosts().end() == net15.hosts().find(make_address_v6("2001:0db8::0200")));
227
- }
228
-
229
- } // namespace ip_network_v6_runtime
230
-
231
- //------------------------------------------------------------------------------
232
-
233
- ASIO_TEST_SUITE
234
- (
235
- "ip/network_v6",
236
- ASIO_TEST_CASE(ip_network_v6_compile::test)
237
- ASIO_TEST_CASE(ip_network_v6_runtime::test)
238
- )
@@ -1,25 +0,0 @@
1
- //
2
- // resolver_query_base.cpp
3
- // ~~~~~~~~~~~~~~~~~~~~~~~
4
- //
5
- // Copyright (c) 2003-2020 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
- // Disable autolinking for unit tests.
12
- #if !defined(BOOST_ALL_NO_LIB)
13
- #define BOOST_ALL_NO_LIB 1
14
- #endif // !defined(BOOST_ALL_NO_LIB)
15
-
16
- // Test that header file is self-contained.
17
- #include "asio/ip/resolver_query_base.hpp"
18
-
19
- #include "../unit_test.hpp"
20
-
21
- ASIO_TEST_SUITE
22
- (
23
- "ip/resolver_query_base",
24
- ASIO_TEST_CASE(null_test)
25
- )
@@ -1,1346 +0,0 @@
1
- //
2
- // tcp.cpp
3
- // ~~~~~~~
4
- //
5
- // Copyright (c) 2003-2020 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
- // Disable autolinking for unit tests.
12
- #if !defined(BOOST_ALL_NO_LIB)
13
- #define BOOST_ALL_NO_LIB 1
14
- #endif // !defined(BOOST_ALL_NO_LIB)
15
-
16
- // Enable cancel() support on Windows.
17
- #define ASIO_ENABLE_CANCELIO 1
18
-
19
- // Test that header file is self-contained.
20
- #include "asio/ip/tcp.hpp"
21
-
22
- #include <cstring>
23
- #include "asio/io_context.hpp"
24
- #include "asio/read.hpp"
25
- #include "asio/write.hpp"
26
- #include "../unit_test.hpp"
27
- #include "../archetypes/async_result.hpp"
28
- #include "../archetypes/gettable_socket_option.hpp"
29
- #include "../archetypes/io_control_command.hpp"
30
- #include "../archetypes/settable_socket_option.hpp"
31
-
32
- #if defined(ASIO_HAS_BOOST_ARRAY)
33
- # include <boost/array.hpp>
34
- #else // defined(ASIO_HAS_BOOST_ARRAY)
35
- # include <array>
36
- #endif // defined(ASIO_HAS_BOOST_ARRAY)
37
-
38
- #if defined(ASIO_HAS_BOOST_BIND)
39
- # include <boost/bind/bind.hpp>
40
- #else // defined(ASIO_HAS_BOOST_BIND)
41
- # include <functional>
42
- #endif // defined(ASIO_HAS_BOOST_BIND)
43
-
44
- //------------------------------------------------------------------------------
45
-
46
- // ip_tcp_compile test
47
- // ~~~~~~~~~~~~~~~~~~~
48
- // The following test checks that all nested classes, enums and constants in
49
- // ip::tcp compile and link correctly. Runtime failures are ignored.
50
-
51
- namespace ip_tcp_compile {
52
-
53
- void test()
54
- {
55
- using namespace asio;
56
- namespace ip = asio::ip;
57
-
58
- try
59
- {
60
- io_context ioc;
61
- ip::tcp::socket sock(ioc);
62
-
63
- // no_delay class.
64
-
65
- ip::tcp::no_delay no_delay1(true);
66
- sock.set_option(no_delay1);
67
- ip::tcp::no_delay no_delay2;
68
- sock.get_option(no_delay2);
69
- no_delay1 = true;
70
- (void)static_cast<bool>(no_delay1);
71
- (void)static_cast<bool>(!no_delay1);
72
- (void)static_cast<bool>(no_delay1.value());
73
- }
74
- catch (std::exception&)
75
- {
76
- }
77
- }
78
-
79
- } // namespace ip_tcp_compile
80
-
81
- //------------------------------------------------------------------------------
82
-
83
- // ip_tcp_runtime test
84
- // ~~~~~~~~~~~~~~~~~~~
85
- // The following test checks the runtime operation of the ip::tcp class.
86
-
87
- namespace ip_tcp_runtime {
88
-
89
- void test()
90
- {
91
- using namespace asio;
92
- namespace ip = asio::ip;
93
-
94
- io_context ioc;
95
- ip::tcp::socket sock(ioc, ip::tcp::v4());
96
- asio::error_code ec;
97
-
98
- // no_delay class.
99
-
100
- ip::tcp::no_delay no_delay1(true);
101
- ASIO_CHECK(no_delay1.value());
102
- ASIO_CHECK(static_cast<bool>(no_delay1));
103
- ASIO_CHECK(!!no_delay1);
104
- sock.set_option(no_delay1, ec);
105
- ASIO_CHECK(!ec);
106
-
107
- ip::tcp::no_delay no_delay2;
108
- sock.get_option(no_delay2, ec);
109
- ASIO_CHECK(!ec);
110
- ASIO_CHECK(no_delay2.value());
111
- ASIO_CHECK(static_cast<bool>(no_delay2));
112
- ASIO_CHECK(!!no_delay2);
113
-
114
- ip::tcp::no_delay no_delay3(false);
115
- ASIO_CHECK(!no_delay3.value());
116
- ASIO_CHECK(!static_cast<bool>(no_delay3));
117
- ASIO_CHECK(!no_delay3);
118
- sock.set_option(no_delay3, ec);
119
- ASIO_CHECK(!ec);
120
-
121
- ip::tcp::no_delay no_delay4;
122
- sock.get_option(no_delay4, ec);
123
- ASIO_CHECK(!ec);
124
- ASIO_CHECK(!no_delay4.value());
125
- ASIO_CHECK(!static_cast<bool>(no_delay4));
126
- ASIO_CHECK(!no_delay4);
127
- }
128
-
129
- } // namespace ip_tcp_runtime
130
-
131
- //------------------------------------------------------------------------------
132
-
133
- // ip_tcp_socket_compile test
134
- // ~~~~~~~~~~~~~~~~~~~~~~~~~~
135
- // The following test checks that all public member functions on the class
136
- // ip::tcp::socket compile and link correctly. Runtime failures are ignored.
137
-
138
- namespace ip_tcp_socket_compile {
139
-
140
- struct connect_handler
141
- {
142
- connect_handler() {}
143
- void operator()(const asio::error_code&) {}
144
- #if defined(ASIO_HAS_MOVE)
145
- connect_handler(connect_handler&&) {}
146
- private:
147
- connect_handler(const connect_handler&);
148
- #endif // defined(ASIO_HAS_MOVE)
149
- };
150
-
151
- struct wait_handler
152
- {
153
- wait_handler() {}
154
- void operator()(const asio::error_code&) {}
155
- #if defined(ASIO_HAS_MOVE)
156
- wait_handler(wait_handler&&) {}
157
- private:
158
- wait_handler(const wait_handler&);
159
- #endif // defined(ASIO_HAS_MOVE)
160
- };
161
-
162
- struct send_handler
163
- {
164
- send_handler() {}
165
- void operator()(const asio::error_code&, std::size_t) {}
166
- #if defined(ASIO_HAS_MOVE)
167
- send_handler(send_handler&&) {}
168
- private:
169
- send_handler(const send_handler&);
170
- #endif // defined(ASIO_HAS_MOVE)
171
- };
172
-
173
- struct receive_handler
174
- {
175
- receive_handler() {}
176
- void operator()(const asio::error_code&, std::size_t) {}
177
- #if defined(ASIO_HAS_MOVE)
178
- receive_handler(receive_handler&&) {}
179
- private:
180
- receive_handler(const receive_handler&);
181
- #endif // defined(ASIO_HAS_MOVE)
182
- };
183
-
184
- struct write_some_handler
185
- {
186
- write_some_handler() {}
187
- void operator()(const asio::error_code&, std::size_t) {}
188
- #if defined(ASIO_HAS_MOVE)
189
- write_some_handler(write_some_handler&&) {}
190
- private:
191
- write_some_handler(const write_some_handler&);
192
- #endif // defined(ASIO_HAS_MOVE)
193
- };
194
-
195
- struct read_some_handler
196
- {
197
- read_some_handler() {}
198
- void operator()(const asio::error_code&, std::size_t) {}
199
- #if defined(ASIO_HAS_MOVE)
200
- read_some_handler(read_some_handler&&) {}
201
- private:
202
- read_some_handler(const read_some_handler&);
203
- #endif // defined(ASIO_HAS_MOVE)
204
- };
205
-
206
- void test()
207
- {
208
- #if defined(ASIO_HAS_BOOST_ARRAY)
209
- using boost::array;
210
- #else // defined(ASIO_HAS_BOOST_ARRAY)
211
- using std::array;
212
- #endif // defined(ASIO_HAS_BOOST_ARRAY)
213
-
214
- using namespace asio;
215
- namespace ip = asio::ip;
216
-
217
- try
218
- {
219
- io_context ioc;
220
- const io_context::executor_type ioc_ex = ioc.get_executor();
221
- char mutable_char_buffer[128] = "";
222
- const char const_char_buffer[128] = "";
223
- array<asio::mutable_buffer, 2> mutable_buffers = {{
224
- asio::buffer(mutable_char_buffer, 10),
225
- asio::buffer(mutable_char_buffer + 10, 10) }};
226
- array<asio::const_buffer, 2> const_buffers = {{
227
- asio::buffer(const_char_buffer, 10),
228
- asio::buffer(const_char_buffer + 10, 10) }};
229
- socket_base::message_flags in_flags = 0;
230
- archetypes::settable_socket_option<void> settable_socket_option1;
231
- archetypes::settable_socket_option<int> settable_socket_option2;
232
- archetypes::settable_socket_option<double> settable_socket_option3;
233
- archetypes::gettable_socket_option<void> gettable_socket_option1;
234
- archetypes::gettable_socket_option<int> gettable_socket_option2;
235
- archetypes::gettable_socket_option<double> gettable_socket_option3;
236
- archetypes::io_control_command io_control_command;
237
- archetypes::lazy_handler lazy;
238
- asio::error_code ec;
239
-
240
- // basic_stream_socket constructors.
241
-
242
- ip::tcp::socket socket1(ioc);
243
- ip::tcp::socket socket2(ioc, ip::tcp::v4());
244
- ip::tcp::socket socket3(ioc, ip::tcp::v6());
245
- ip::tcp::socket socket4(ioc, ip::tcp::endpoint(ip::tcp::v4(), 0));
246
- ip::tcp::socket socket5(ioc, ip::tcp::endpoint(ip::tcp::v6(), 0));
247
- #if !defined(ASIO_WINDOWS_RUNTIME)
248
- ip::tcp::socket::native_handle_type native_socket1
249
- = ::socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
250
- ip::tcp::socket socket6(ioc, ip::tcp::v4(), native_socket1);
251
- #endif // !defined(ASIO_WINDOWS_RUNTIME)
252
-
253
- ip::tcp::socket socket7(ioc_ex);
254
- ip::tcp::socket socket8(ioc_ex, ip::tcp::v4());
255
- ip::tcp::socket socket9(ioc_ex, ip::tcp::v6());
256
- ip::tcp::socket socket10(ioc_ex, ip::tcp::endpoint(ip::tcp::v4(), 0));
257
- ip::tcp::socket socket11(ioc_ex, ip::tcp::endpoint(ip::tcp::v6(), 0));
258
- #if !defined(ASIO_WINDOWS_RUNTIME)
259
- ip::tcp::socket::native_handle_type native_socket2
260
- = ::socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
261
- ip::tcp::socket socket12(ioc_ex, ip::tcp::v4(), native_socket2);
262
- #endif // !defined(ASIO_WINDOWS_RUNTIME)
263
-
264
- #if defined(ASIO_HAS_MOVE)
265
- ip::tcp::socket socket13(std::move(socket5));
266
- #endif // defined(ASIO_HAS_MOVE)
267
-
268
- // basic_stream_socket operators.
269
-
270
- #if defined(ASIO_HAS_MOVE)
271
- socket1 = ip::tcp::socket(ioc);
272
- socket1 = std::move(socket2);
273
- #endif // defined(ASIO_HAS_MOVE)
274
-
275
- // basic_io_object functions.
276
-
277
- ip::tcp::socket::executor_type ex = socket1.get_executor();
278
- (void)ex;
279
-
280
- // basic_socket functions.
281
-
282
- ip::tcp::socket::lowest_layer_type& lowest_layer = socket1.lowest_layer();
283
- (void)lowest_layer;
284
-
285
- const ip::tcp::socket& socket14 = socket1;
286
- const ip::tcp::socket::lowest_layer_type& lowest_layer2
287
- = socket14.lowest_layer();
288
- (void)lowest_layer2;
289
-
290
- socket1.open(ip::tcp::v4());
291
- socket1.open(ip::tcp::v6());
292
- socket1.open(ip::tcp::v4(), ec);
293
- socket1.open(ip::tcp::v6(), ec);
294
-
295
- #if !defined(ASIO_WINDOWS_RUNTIME)
296
- ip::tcp::socket::native_handle_type native_socket3
297
- = ::socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
298
- socket1.assign(ip::tcp::v4(), native_socket3);
299
- ip::tcp::socket::native_handle_type native_socket4
300
- = ::socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
301
- socket1.assign(ip::tcp::v4(), native_socket4, ec);
302
- #endif // !defined(ASIO_WINDOWS_RUNTIME)
303
-
304
- bool is_open = socket1.is_open();
305
- (void)is_open;
306
-
307
- socket1.close();
308
- socket1.close(ec);
309
-
310
- socket1.release();
311
- socket1.release(ec);
312
-
313
- ip::tcp::socket::native_handle_type native_socket5
314
- = socket1.native_handle();
315
- (void)native_socket5;
316
-
317
- socket1.cancel();
318
- socket1.cancel(ec);
319
-
320
- bool at_mark1 = socket1.at_mark();
321
- (void)at_mark1;
322
- bool at_mark2 = socket1.at_mark(ec);
323
- (void)at_mark2;
324
-
325
- std::size_t available1 = socket1.available();
326
- (void)available1;
327
- std::size_t available2 = socket1.available(ec);
328
- (void)available2;
329
-
330
- socket1.bind(ip::tcp::endpoint(ip::tcp::v4(), 0));
331
- socket1.bind(ip::tcp::endpoint(ip::tcp::v6(), 0));
332
- socket1.bind(ip::tcp::endpoint(ip::tcp::v4(), 0), ec);
333
- socket1.bind(ip::tcp::endpoint(ip::tcp::v6(), 0), ec);
334
-
335
- socket1.connect(ip::tcp::endpoint(ip::tcp::v4(), 0));
336
- socket1.connect(ip::tcp::endpoint(ip::tcp::v6(), 0));
337
- socket1.connect(ip::tcp::endpoint(ip::tcp::v4(), 0), ec);
338
- socket1.connect(ip::tcp::endpoint(ip::tcp::v6(), 0), ec);
339
-
340
- socket1.async_connect(ip::tcp::endpoint(ip::tcp::v4(), 0),
341
- connect_handler());
342
- socket1.async_connect(ip::tcp::endpoint(ip::tcp::v6(), 0),
343
- connect_handler());
344
- int i1 = socket1.async_connect(ip::tcp::endpoint(ip::tcp::v4(), 0), lazy);
345
- (void)i1;
346
- int i2 = socket1.async_connect(ip::tcp::endpoint(ip::tcp::v6(), 0), lazy);
347
- (void)i2;
348
-
349
- socket1.set_option(settable_socket_option1);
350
- socket1.set_option(settable_socket_option1, ec);
351
- socket1.set_option(settable_socket_option2);
352
- socket1.set_option(settable_socket_option2, ec);
353
- socket1.set_option(settable_socket_option3);
354
- socket1.set_option(settable_socket_option3, ec);
355
-
356
- socket1.get_option(gettable_socket_option1);
357
- socket1.get_option(gettable_socket_option1, ec);
358
- socket1.get_option(gettable_socket_option2);
359
- socket1.get_option(gettable_socket_option2, ec);
360
- socket1.get_option(gettable_socket_option3);
361
- socket1.get_option(gettable_socket_option3, ec);
362
-
363
- socket1.io_control(io_control_command);
364
- socket1.io_control(io_control_command, ec);
365
-
366
- bool non_blocking1 = socket1.non_blocking();
367
- (void)non_blocking1;
368
- socket1.non_blocking(true);
369
- socket1.non_blocking(false, ec);
370
-
371
- bool non_blocking2 = socket1.native_non_blocking();
372
- (void)non_blocking2;
373
- socket1.native_non_blocking(true);
374
- socket1.native_non_blocking(false, ec);
375
-
376
- ip::tcp::endpoint endpoint1 = socket1.local_endpoint();
377
- (void)endpoint1;
378
- ip::tcp::endpoint endpoint2 = socket1.local_endpoint(ec);
379
- (void)endpoint2;
380
-
381
- ip::tcp::endpoint endpoint3 = socket1.remote_endpoint();
382
- (void)endpoint3;
383
- ip::tcp::endpoint endpoint4 = socket1.remote_endpoint(ec);
384
- (void)endpoint4;
385
-
386
- socket1.shutdown(socket_base::shutdown_both);
387
- socket1.shutdown(socket_base::shutdown_both, ec);
388
-
389
- socket1.wait(socket_base::wait_read);
390
- socket1.wait(socket_base::wait_write, ec);
391
-
392
- socket1.async_wait(socket_base::wait_read, wait_handler());
393
- int i3 = socket1.async_wait(socket_base::wait_write, lazy);
394
- (void)i3;
395
-
396
- // basic_stream_socket functions.
397
-
398
- socket1.send(buffer(mutable_char_buffer));
399
- socket1.send(buffer(const_char_buffer));
400
- socket1.send(mutable_buffers);
401
- socket1.send(const_buffers);
402
- socket1.send(null_buffers());
403
- socket1.send(buffer(mutable_char_buffer), in_flags);
404
- socket1.send(buffer(const_char_buffer), in_flags);
405
- socket1.send(mutable_buffers, in_flags);
406
- socket1.send(const_buffers, in_flags);
407
- socket1.send(null_buffers(), in_flags);
408
- socket1.send(buffer(mutable_char_buffer), in_flags, ec);
409
- socket1.send(buffer(const_char_buffer), in_flags, ec);
410
- socket1.send(mutable_buffers, in_flags, ec);
411
- socket1.send(const_buffers, in_flags, ec);
412
- socket1.send(null_buffers(), in_flags, ec);
413
-
414
- socket1.async_send(buffer(mutable_char_buffer), send_handler());
415
- socket1.async_send(buffer(const_char_buffer), send_handler());
416
- socket1.async_send(mutable_buffers, send_handler());
417
- socket1.async_send(const_buffers, send_handler());
418
- socket1.async_send(null_buffers(), send_handler());
419
- socket1.async_send(buffer(mutable_char_buffer), in_flags, send_handler());
420
- socket1.async_send(buffer(const_char_buffer), in_flags, send_handler());
421
- socket1.async_send(mutable_buffers, in_flags, send_handler());
422
- socket1.async_send(const_buffers, in_flags, send_handler());
423
- socket1.async_send(null_buffers(), in_flags, send_handler());
424
- int i4 = socket1.async_send(buffer(mutable_char_buffer), lazy);
425
- (void)i4;
426
- int i5 = socket1.async_send(buffer(const_char_buffer), lazy);
427
- (void)i5;
428
- int i6 = socket1.async_send(mutable_buffers, lazy);
429
- (void)i6;
430
- int i7 = socket1.async_send(const_buffers, lazy);
431
- (void)i7;
432
- int i8 = socket1.async_send(null_buffers(), lazy);
433
- (void)i8;
434
- int i9 = socket1.async_send(buffer(mutable_char_buffer), in_flags, lazy);
435
- (void)i9;
436
- int i10 = socket1.async_send(buffer(const_char_buffer), in_flags, lazy);
437
- (void)i10;
438
- int i11 = socket1.async_send(mutable_buffers, in_flags, lazy);
439
- (void)i11;
440
- int i12 = socket1.async_send(const_buffers, in_flags, lazy);
441
- (void)i12;
442
- int i13 = socket1.async_send(null_buffers(), in_flags, lazy);
443
- (void)i13;
444
-
445
- socket1.receive(buffer(mutable_char_buffer));
446
- socket1.receive(mutable_buffers);
447
- socket1.receive(null_buffers());
448
- socket1.receive(buffer(mutable_char_buffer), in_flags);
449
- socket1.receive(mutable_buffers, in_flags);
450
- socket1.receive(null_buffers(), in_flags);
451
- socket1.receive(buffer(mutable_char_buffer), in_flags, ec);
452
- socket1.receive(mutable_buffers, in_flags, ec);
453
- socket1.receive(null_buffers(), in_flags, ec);
454
-
455
- socket1.async_receive(buffer(mutable_char_buffer), receive_handler());
456
- socket1.async_receive(mutable_buffers, receive_handler());
457
- socket1.async_receive(null_buffers(), receive_handler());
458
- socket1.async_receive(buffer(mutable_char_buffer), in_flags,
459
- receive_handler());
460
- socket1.async_receive(mutable_buffers, in_flags, receive_handler());
461
- socket1.async_receive(null_buffers(), in_flags, receive_handler());
462
- int i14 = socket1.async_receive(buffer(mutable_char_buffer), lazy);
463
- (void)i14;
464
- int i15 = socket1.async_receive(mutable_buffers, lazy);
465
- (void)i15;
466
- int i16 = socket1.async_receive(null_buffers(), lazy);
467
- (void)i16;
468
- int i17 = socket1.async_receive(buffer(mutable_char_buffer), in_flags,
469
- lazy);
470
- (void)i17;
471
- int i18 = socket1.async_receive(mutable_buffers, in_flags, lazy);
472
- (void)i18;
473
- int i19 = socket1.async_receive(null_buffers(), in_flags, lazy);
474
- (void)i19;
475
-
476
- socket1.write_some(buffer(mutable_char_buffer));
477
- socket1.write_some(buffer(const_char_buffer));
478
- socket1.write_some(mutable_buffers);
479
- socket1.write_some(const_buffers);
480
- socket1.write_some(null_buffers());
481
- socket1.write_some(buffer(mutable_char_buffer), ec);
482
- socket1.write_some(buffer(const_char_buffer), ec);
483
- socket1.write_some(mutable_buffers, ec);
484
- socket1.write_some(const_buffers, ec);
485
- socket1.write_some(null_buffers(), ec);
486
-
487
- socket1.async_write_some(buffer(mutable_char_buffer), write_some_handler());
488
- socket1.async_write_some(buffer(const_char_buffer), write_some_handler());
489
- socket1.async_write_some(mutable_buffers, write_some_handler());
490
- socket1.async_write_some(const_buffers, write_some_handler());
491
- socket1.async_write_some(null_buffers(), write_some_handler());
492
- int i20 = socket1.async_write_some(buffer(mutable_char_buffer), lazy);
493
- (void)i20;
494
- int i21 = socket1.async_write_some(buffer(const_char_buffer), lazy);
495
- (void)i21;
496
- int i22 = socket1.async_write_some(mutable_buffers, lazy);
497
- (void)i22;
498
- int i23 = socket1.async_write_some(const_buffers, lazy);
499
- (void)i23;
500
- int i24 = socket1.async_write_some(null_buffers(), lazy);
501
- (void)i24;
502
-
503
- socket1.read_some(buffer(mutable_char_buffer));
504
- socket1.read_some(mutable_buffers);
505
- socket1.read_some(null_buffers());
506
- socket1.read_some(buffer(mutable_char_buffer), ec);
507
- socket1.read_some(mutable_buffers, ec);
508
- socket1.read_some(null_buffers(), ec);
509
-
510
- socket1.async_read_some(buffer(mutable_char_buffer), read_some_handler());
511
- socket1.async_read_some(mutable_buffers, read_some_handler());
512
- socket1.async_read_some(null_buffers(), read_some_handler());
513
- int i25 = socket1.async_read_some(buffer(mutable_char_buffer), lazy);
514
- (void)i25;
515
- int i26 = socket1.async_read_some(mutable_buffers, lazy);
516
- (void)i26;
517
- int i27 = socket1.async_read_some(null_buffers(), lazy);
518
- (void)i27;
519
- }
520
- catch (std::exception&)
521
- {
522
- }
523
- }
524
-
525
- } // namespace ip_tcp_socket_compile
526
-
527
- //------------------------------------------------------------------------------
528
-
529
- // ip_tcp_socket_runtime test
530
- // ~~~~~~~~~~~~~~~~~~~~~~~~~~
531
- // The following test checks the runtime operation of the ip::tcp::socket class.
532
-
533
- namespace ip_tcp_socket_runtime {
534
-
535
- static const char write_data[]
536
- = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
537
-
538
- void handle_read_noop(const asio::error_code& err,
539
- size_t bytes_transferred, bool* called)
540
- {
541
- *called = true;
542
- ASIO_CHECK(!err);
543
- ASIO_CHECK(bytes_transferred == 0);
544
- }
545
-
546
- void handle_write_noop(const asio::error_code& err,
547
- size_t bytes_transferred, bool* called)
548
- {
549
- *called = true;
550
- ASIO_CHECK(!err);
551
- ASIO_CHECK(bytes_transferred == 0);
552
- }
553
-
554
- void handle_read(const asio::error_code& err,
555
- size_t bytes_transferred, bool* called)
556
- {
557
- *called = true;
558
- ASIO_CHECK(!err);
559
- ASIO_CHECK(bytes_transferred == sizeof(write_data));
560
- }
561
-
562
- void handle_write(const asio::error_code& err,
563
- size_t bytes_transferred, bool* called)
564
- {
565
- *called = true;
566
- ASIO_CHECK(!err);
567
- ASIO_CHECK(bytes_transferred == sizeof(write_data));
568
- }
569
-
570
- void handle_read_cancel(const asio::error_code& err,
571
- size_t bytes_transferred, bool* called)
572
- {
573
- *called = true;
574
- ASIO_CHECK(err == asio::error::operation_aborted);
575
- ASIO_CHECK(bytes_transferred == 0);
576
- }
577
-
578
- void handle_read_eof(const asio::error_code& err,
579
- size_t bytes_transferred, bool* called)
580
- {
581
- *called = true;
582
- ASIO_CHECK(err == asio::error::eof);
583
- ASIO_CHECK(bytes_transferred == 0);
584
- }
585
-
586
- void test()
587
- {
588
- using namespace std; // For memcmp.
589
- using namespace asio;
590
- namespace ip = asio::ip;
591
-
592
- #if defined(ASIO_HAS_BOOST_BIND)
593
- namespace bindns = boost;
594
- #else // defined(ASIO_HAS_BOOST_BIND)
595
- namespace bindns = std;
596
- #endif // defined(ASIO_HAS_BOOST_BIND)
597
- using bindns::placeholders::_1;
598
- using bindns::placeholders::_2;
599
-
600
- io_context ioc;
601
-
602
- ip::tcp::acceptor acceptor(ioc, ip::tcp::endpoint(ip::tcp::v4(), 0));
603
- ip::tcp::endpoint server_endpoint = acceptor.local_endpoint();
604
- server_endpoint.address(ip::address_v4::loopback());
605
-
606
- ip::tcp::socket client_side_socket(ioc);
607
- ip::tcp::socket server_side_socket(ioc);
608
-
609
- client_side_socket.connect(server_endpoint);
610
- acceptor.accept(server_side_socket);
611
-
612
- // No-op read.
613
-
614
- bool read_noop_completed = false;
615
- client_side_socket.async_read_some(
616
- asio::mutable_buffer(0, 0),
617
- bindns::bind(handle_read_noop,
618
- _1, _2, &read_noop_completed));
619
-
620
- ioc.run();
621
- ASIO_CHECK(read_noop_completed);
622
-
623
- // No-op write.
624
-
625
- bool write_noop_completed = false;
626
- client_side_socket.async_write_some(
627
- asio::const_buffer(0, 0),
628
- bindns::bind(handle_write_noop,
629
- _1, _2, &write_noop_completed));
630
-
631
- ioc.restart();
632
- ioc.run();
633
- ASIO_CHECK(write_noop_completed);
634
-
635
- // Read and write to transfer data.
636
-
637
- char read_buffer[sizeof(write_data)];
638
- bool read_completed = false;
639
- asio::async_read(client_side_socket,
640
- asio::buffer(read_buffer),
641
- bindns::bind(handle_read,
642
- _1, _2, &read_completed));
643
-
644
- bool write_completed = false;
645
- asio::async_write(server_side_socket,
646
- asio::buffer(write_data),
647
- bindns::bind(handle_write,
648
- _1, _2, &write_completed));
649
-
650
- ioc.restart();
651
- ioc.run();
652
- ASIO_CHECK(read_completed);
653
- ASIO_CHECK(write_completed);
654
- ASIO_CHECK(memcmp(read_buffer, write_data, sizeof(write_data)) == 0);
655
-
656
- // Cancelled read.
657
-
658
- bool read_cancel_completed = false;
659
- asio::async_read(server_side_socket,
660
- asio::buffer(read_buffer),
661
- bindns::bind(handle_read_cancel,
662
- _1, _2, &read_cancel_completed));
663
-
664
- ioc.restart();
665
- ioc.poll();
666
- ASIO_CHECK(!read_cancel_completed);
667
-
668
- server_side_socket.cancel();
669
-
670
- ioc.restart();
671
- ioc.run();
672
- ASIO_CHECK(read_cancel_completed);
673
-
674
- // A read when the peer closes socket should fail with eof.
675
-
676
- bool read_eof_completed = false;
677
- asio::async_read(client_side_socket,
678
- asio::buffer(read_buffer),
679
- bindns::bind(handle_read_eof,
680
- _1, _2, &read_eof_completed));
681
-
682
- server_side_socket.close();
683
-
684
- ioc.restart();
685
- ioc.run();
686
- ASIO_CHECK(read_eof_completed);
687
- }
688
-
689
- } // namespace ip_tcp_socket_runtime
690
-
691
- //------------------------------------------------------------------------------
692
-
693
- // ip_tcp_acceptor_compile test
694
- // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
695
- // The following test checks that all public member functions on the class
696
- // ip::tcp::acceptor compile and link correctly. Runtime failures are ignored.
697
-
698
- namespace ip_tcp_acceptor_compile {
699
-
700
- struct wait_handler
701
- {
702
- wait_handler() {}
703
- void operator()(const asio::error_code&) {}
704
- #if defined(ASIO_HAS_MOVE)
705
- wait_handler(wait_handler&&) {}
706
- private:
707
- wait_handler(const wait_handler&);
708
- #endif // defined(ASIO_HAS_MOVE)
709
- };
710
-
711
- struct accept_handler
712
- {
713
- accept_handler() {}
714
- void operator()(const asio::error_code&) {}
715
- #if defined(ASIO_HAS_MOVE)
716
- accept_handler(accept_handler&&) {}
717
- private:
718
- accept_handler(const accept_handler&);
719
- #endif // defined(ASIO_HAS_MOVE)
720
- };
721
-
722
- #if defined(ASIO_HAS_MOVE)
723
- struct move_accept_handler
724
- {
725
- move_accept_handler() {}
726
- void operator()(
727
- const asio::error_code&, asio::ip::tcp::socket) {}
728
- move_accept_handler(move_accept_handler&&) {}
729
- private:
730
- move_accept_handler(const move_accept_handler&) {}
731
- };
732
-
733
- struct move_accept_ioc_handler
734
- {
735
- move_accept_ioc_handler() {}
736
- void operator()(const asio::error_code&,
737
- asio::basic_stream_socket<asio::ip::tcp,
738
- asio::io_context::executor_type>) {}
739
- move_accept_ioc_handler(move_accept_handler&&) {}
740
- private:
741
- move_accept_ioc_handler(const move_accept_handler&) {}
742
- };
743
- #endif // defined(ASIO_HAS_MOVE)
744
-
745
- void test()
746
- {
747
- using namespace asio;
748
- namespace ip = asio::ip;
749
-
750
- try
751
- {
752
- io_context ioc;
753
- const io_context::executor_type ioc_ex = ioc.get_executor();
754
- ip::tcp::socket peer_socket1(ioc);
755
- asio::basic_stream_socket<ip::tcp,
756
- io_context::executor_type> peer_socket2(ioc);
757
- ip::tcp::endpoint peer_endpoint;
758
- archetypes::settable_socket_option<void> settable_socket_option1;
759
- archetypes::settable_socket_option<int> settable_socket_option2;
760
- archetypes::settable_socket_option<double> settable_socket_option3;
761
- archetypes::gettable_socket_option<void> gettable_socket_option1;
762
- archetypes::gettable_socket_option<int> gettable_socket_option2;
763
- archetypes::gettable_socket_option<double> gettable_socket_option3;
764
- archetypes::io_control_command io_control_command;
765
- archetypes::lazy_handler lazy;
766
- asio::error_code ec;
767
-
768
- // basic_socket_acceptor constructors.
769
-
770
- ip::tcp::acceptor acceptor1(ioc);
771
- ip::tcp::acceptor acceptor2(ioc, ip::tcp::v4());
772
- ip::tcp::acceptor acceptor3(ioc, ip::tcp::v6());
773
- ip::tcp::acceptor acceptor4(ioc, ip::tcp::endpoint(ip::tcp::v4(), 0));
774
- ip::tcp::acceptor acceptor5(ioc, ip::tcp::endpoint(ip::tcp::v6(), 0));
775
- #if !defined(ASIO_WINDOWS_RUNTIME)
776
- ip::tcp::acceptor::native_handle_type native_acceptor1
777
- = ::socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
778
- ip::tcp::acceptor acceptor6(ioc, ip::tcp::v4(), native_acceptor1);
779
- #endif // !defined(ASIO_WINDOWS_RUNTIME)
780
-
781
- ip::tcp::acceptor acceptor7(ioc_ex);
782
- ip::tcp::acceptor acceptor8(ioc_ex, ip::tcp::v4());
783
- ip::tcp::acceptor acceptor9(ioc_ex, ip::tcp::v6());
784
- ip::tcp::acceptor acceptor10(ioc_ex, ip::tcp::endpoint(ip::tcp::v4(), 0));
785
- ip::tcp::acceptor acceptor11(ioc_ex, ip::tcp::endpoint(ip::tcp::v6(), 0));
786
- #if !defined(ASIO_WINDOWS_RUNTIME)
787
- ip::tcp::acceptor::native_handle_type native_acceptor2
788
- = ::socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
789
- ip::tcp::acceptor acceptor12(ioc_ex, ip::tcp::v4(), native_acceptor2);
790
- #endif // !defined(ASIO_WINDOWS_RUNTIME)
791
-
792
- #if defined(ASIO_HAS_MOVE)
793
- ip::tcp::acceptor acceptor13(std::move(acceptor5));
794
- #endif // defined(ASIO_HAS_MOVE)
795
-
796
- // basic_socket_acceptor operators.
797
-
798
- #if defined(ASIO_HAS_MOVE)
799
- acceptor1 = ip::tcp::acceptor(ioc);
800
- acceptor1 = std::move(acceptor2);
801
- #endif // defined(ASIO_HAS_MOVE)
802
-
803
- // basic_io_object functions.
804
-
805
- ip::tcp::acceptor::executor_type ex = acceptor1.get_executor();
806
- (void)ex;
807
-
808
- // basic_socket_acceptor functions.
809
-
810
- acceptor1.open(ip::tcp::v4());
811
- acceptor1.open(ip::tcp::v6());
812
- acceptor1.open(ip::tcp::v4(), ec);
813
- acceptor1.open(ip::tcp::v6(), ec);
814
-
815
- #if !defined(ASIO_WINDOWS_RUNTIME)
816
- ip::tcp::acceptor::native_handle_type native_acceptor3
817
- = ::socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
818
- acceptor1.assign(ip::tcp::v4(), native_acceptor3);
819
- ip::tcp::acceptor::native_handle_type native_acceptor4
820
- = ::socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
821
- acceptor1.assign(ip::tcp::v4(), native_acceptor4, ec);
822
- #endif // !defined(ASIO_WINDOWS_RUNTIME)
823
-
824
- bool is_open = acceptor1.is_open();
825
- (void)is_open;
826
-
827
- acceptor1.close();
828
- acceptor1.close(ec);
829
-
830
- acceptor1.release();
831
- acceptor1.release(ec);
832
-
833
- ip::tcp::acceptor::native_handle_type native_acceptor5
834
- = acceptor1.native_handle();
835
- (void)native_acceptor5;
836
-
837
- acceptor1.cancel();
838
- acceptor1.cancel(ec);
839
-
840
- acceptor1.bind(ip::tcp::endpoint(ip::tcp::v4(), 0));
841
- acceptor1.bind(ip::tcp::endpoint(ip::tcp::v6(), 0));
842
- acceptor1.bind(ip::tcp::endpoint(ip::tcp::v4(), 0), ec);
843
- acceptor1.bind(ip::tcp::endpoint(ip::tcp::v6(), 0), ec);
844
-
845
- acceptor1.set_option(settable_socket_option1);
846
- acceptor1.set_option(settable_socket_option1, ec);
847
- acceptor1.set_option(settable_socket_option2);
848
- acceptor1.set_option(settable_socket_option2, ec);
849
- acceptor1.set_option(settable_socket_option3);
850
- acceptor1.set_option(settable_socket_option3, ec);
851
-
852
- acceptor1.get_option(gettable_socket_option1);
853
- acceptor1.get_option(gettable_socket_option1, ec);
854
- acceptor1.get_option(gettable_socket_option2);
855
- acceptor1.get_option(gettable_socket_option2, ec);
856
- acceptor1.get_option(gettable_socket_option3);
857
- acceptor1.get_option(gettable_socket_option3, ec);
858
-
859
- acceptor1.io_control(io_control_command);
860
- acceptor1.io_control(io_control_command, ec);
861
-
862
- bool non_blocking1 = acceptor1.non_blocking();
863
- (void)non_blocking1;
864
- acceptor1.non_blocking(true);
865
- acceptor1.non_blocking(false, ec);
866
-
867
- bool non_blocking2 = acceptor1.native_non_blocking();
868
- (void)non_blocking2;
869
- acceptor1.native_non_blocking(true);
870
- acceptor1.native_non_blocking(false, ec);
871
-
872
- ip::tcp::endpoint endpoint1 = acceptor1.local_endpoint();
873
- (void)endpoint1;
874
- ip::tcp::endpoint endpoint2 = acceptor1.local_endpoint(ec);
875
- (void)endpoint2;
876
-
877
- acceptor1.wait(socket_base::wait_read);
878
- acceptor1.wait(socket_base::wait_write, ec);
879
-
880
- acceptor1.async_wait(socket_base::wait_read, wait_handler());
881
- int i1 = acceptor1.async_wait(socket_base::wait_write, lazy);
882
- (void)i1;
883
-
884
- acceptor1.accept(peer_socket1);
885
- acceptor1.accept(peer_socket1, ec);
886
- acceptor1.accept(peer_socket1, peer_endpoint);
887
- acceptor1.accept(peer_socket1, peer_endpoint, ec);
888
-
889
- acceptor1.accept(peer_socket2);
890
- acceptor1.accept(peer_socket2, ec);
891
- acceptor1.accept(peer_socket2, peer_endpoint);
892
- acceptor1.accept(peer_socket2, peer_endpoint, ec);
893
-
894
- #if defined(ASIO_HAS_MOVE)
895
- peer_socket1 = acceptor1.accept();
896
- peer_socket1 = acceptor1.accept(ioc);
897
- peer_socket1 = acceptor1.accept(ioc_ex);
898
- peer_socket1 = acceptor1.accept(peer_endpoint);
899
- peer_socket1 = acceptor1.accept(ioc, peer_endpoint);
900
- peer_socket1 = acceptor1.accept(ioc_ex, peer_endpoint);
901
- (void)peer_socket1;
902
-
903
- peer_socket2 = acceptor1.accept(ioc);
904
- peer_socket2 = acceptor1.accept(ioc_ex);
905
- peer_socket2 = acceptor1.accept(ioc, peer_endpoint);
906
- peer_socket2 = acceptor1.accept(ioc_ex, peer_endpoint);
907
- (void)peer_socket2;
908
- #endif // defined(ASIO_HAS_MOVE)
909
-
910
- acceptor1.async_accept(peer_socket1, accept_handler());
911
- acceptor1.async_accept(peer_socket1, peer_endpoint, accept_handler());
912
- int i2 = acceptor1.async_accept(peer_socket1, lazy);
913
- (void)i2;
914
- int i3 = acceptor1.async_accept(peer_socket1, peer_endpoint, lazy);
915
- (void)i3;
916
-
917
- acceptor1.async_accept(peer_socket2, accept_handler());
918
- acceptor1.async_accept(peer_socket2, peer_endpoint, accept_handler());
919
- int i4 = acceptor1.async_accept(peer_socket2, lazy);
920
- (void)i4;
921
- int i5 = acceptor1.async_accept(peer_socket2, peer_endpoint, lazy);
922
- (void)i5;
923
-
924
- #if defined(ASIO_HAS_MOVE)
925
- acceptor1.async_accept(move_accept_handler());
926
- acceptor1.async_accept(ioc, move_accept_handler());
927
- acceptor1.async_accept(ioc_ex, move_accept_handler());
928
- acceptor1.async_accept(ioc_ex, move_accept_ioc_handler());
929
- acceptor1.async_accept(peer_endpoint, move_accept_handler());
930
- acceptor1.async_accept(ioc, peer_endpoint, move_accept_handler());
931
- acceptor1.async_accept(ioc_ex, peer_endpoint, move_accept_handler());
932
- acceptor1.async_accept(ioc_ex, peer_endpoint, move_accept_ioc_handler());
933
- #endif // defined(ASIO_HAS_MOVE)
934
- }
935
- catch (std::exception&)
936
- {
937
- }
938
- }
939
-
940
- } // namespace ip_tcp_acceptor_compile
941
-
942
- //------------------------------------------------------------------------------
943
-
944
- // ip_tcp_acceptor_runtime test
945
- // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
946
- // The following test checks the runtime operation of the ip::tcp::acceptor
947
- // class.
948
-
949
- namespace ip_tcp_acceptor_runtime {
950
-
951
- void handle_accept(const asio::error_code& err)
952
- {
953
- ASIO_CHECK(!err);
954
- }
955
-
956
- void handle_connect(const asio::error_code& err)
957
- {
958
- ASIO_CHECK(!err);
959
- }
960
-
961
- void test()
962
- {
963
- using namespace asio;
964
- namespace ip = asio::ip;
965
-
966
- io_context ioc;
967
-
968
- ip::tcp::acceptor acceptor(ioc, ip::tcp::endpoint(ip::tcp::v4(), 0));
969
- ip::tcp::endpoint server_endpoint = acceptor.local_endpoint();
970
- server_endpoint.address(ip::address_v4::loopback());
971
-
972
- ip::tcp::socket client_side_socket(ioc);
973
- ip::tcp::socket server_side_socket(ioc);
974
-
975
- client_side_socket.connect(server_endpoint);
976
- acceptor.accept(server_side_socket);
977
-
978
- client_side_socket.close();
979
- server_side_socket.close();
980
-
981
- client_side_socket.connect(server_endpoint);
982
- ip::tcp::endpoint client_endpoint;
983
- acceptor.accept(server_side_socket, client_endpoint);
984
-
985
- ip::tcp::endpoint client_side_local_endpoint
986
- = client_side_socket.local_endpoint();
987
- ASIO_CHECK(client_side_local_endpoint.port() == client_endpoint.port());
988
-
989
- ip::tcp::endpoint server_side_remote_endpoint
990
- = server_side_socket.remote_endpoint();
991
- ASIO_CHECK(server_side_remote_endpoint.port()
992
- == client_endpoint.port());
993
-
994
- client_side_socket.close();
995
- server_side_socket.close();
996
-
997
- acceptor.async_accept(server_side_socket, &handle_accept);
998
- client_side_socket.async_connect(server_endpoint, &handle_connect);
999
-
1000
- ioc.run();
1001
-
1002
- client_side_socket.close();
1003
- server_side_socket.close();
1004
-
1005
- acceptor.async_accept(server_side_socket, client_endpoint, &handle_accept);
1006
- client_side_socket.async_connect(server_endpoint, &handle_connect);
1007
-
1008
- ioc.restart();
1009
- ioc.run();
1010
-
1011
- client_side_local_endpoint = client_side_socket.local_endpoint();
1012
- ASIO_CHECK(client_side_local_endpoint.port() == client_endpoint.port());
1013
-
1014
- server_side_remote_endpoint = server_side_socket.remote_endpoint();
1015
- ASIO_CHECK(server_side_remote_endpoint.port()
1016
- == client_endpoint.port());
1017
- }
1018
-
1019
- } // namespace ip_tcp_acceptor_runtime
1020
-
1021
- //------------------------------------------------------------------------------
1022
-
1023
- // ip_tcp_resolver_compile test
1024
- // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1025
- // The following test checks that all public member functions on the class
1026
- // ip::tcp::resolver compile and link correctly. Runtime failures are ignored.
1027
-
1028
- namespace ip_tcp_resolver_compile {
1029
-
1030
- struct resolve_handler
1031
- {
1032
- resolve_handler() {}
1033
- void operator()(const asio::error_code&,
1034
- asio::ip::tcp::resolver::results_type) {}
1035
- #if defined(ASIO_HAS_MOVE)
1036
- resolve_handler(resolve_handler&&) {}
1037
- private:
1038
- resolve_handler(const resolve_handler&);
1039
- #endif // defined(ASIO_HAS_MOVE)
1040
- };
1041
-
1042
- #if !defined(ASIO_NO_DEPRECATED)
1043
- struct legacy_resolve_handler
1044
- {
1045
- legacy_resolve_handler() {}
1046
- void operator()(const asio::error_code&,
1047
- asio::ip::tcp::resolver::iterator) {}
1048
- #if defined(ASIO_HAS_MOVE)
1049
- legacy_resolve_handler(legacy_resolve_handler&&) {}
1050
- private:
1051
- legacy_resolve_handler(const legacy_resolve_handler&);
1052
- #endif // defined(ASIO_HAS_MOVE)
1053
- };
1054
- #endif // !defined(ASIO_NO_DEPRECATED)
1055
-
1056
- void test()
1057
- {
1058
- using namespace asio;
1059
- namespace ip = asio::ip;
1060
-
1061
- try
1062
- {
1063
- io_context ioc;
1064
- const io_context::executor_type ioc_ex = ioc.get_executor();
1065
- archetypes::lazy_handler lazy;
1066
- asio::error_code ec;
1067
- #if !defined(ASIO_NO_DEPRECATED)
1068
- ip::tcp::resolver::query q(ip::tcp::v4(), "localhost", "0");
1069
- #endif // !defined(ASIO_NO_DEPRECATED)
1070
- ip::tcp::endpoint e(ip::address_v4::loopback(), 0);
1071
-
1072
- // basic_resolver constructors.
1073
-
1074
- ip::tcp::resolver resolver(ioc);
1075
- ip::tcp::resolver resolver2(ioc_ex);
1076
-
1077
- #if defined(ASIO_HAS_MOVE)
1078
- ip::tcp::resolver resolver3(std::move(resolver));
1079
- #endif // defined(ASIO_HAS_MOVE)
1080
-
1081
- // basic_resolver operators.
1082
-
1083
- #if defined(ASIO_HAS_MOVE)
1084
- resolver = ip::tcp::resolver(ioc);
1085
- resolver = std::move(resolver3);
1086
- #endif // defined(ASIO_HAS_MOVE)
1087
-
1088
- // basic_io_object functions.
1089
-
1090
- ip::tcp::resolver::executor_type ex = resolver.get_executor();
1091
- (void)ex;
1092
-
1093
- // basic_resolver functions.
1094
-
1095
- resolver.cancel();
1096
-
1097
- #if !defined(ASIO_NO_DEPRECATED)
1098
- ip::tcp::resolver::results_type results1 = resolver.resolve(q);
1099
- (void)results1;
1100
-
1101
- ip::tcp::resolver::results_type results2 = resolver.resolve(q, ec);
1102
- (void)results2;
1103
- #endif // !defined(ASIO_NO_DEPRECATED)
1104
-
1105
- ip::tcp::resolver::results_type results3 = resolver.resolve("", "");
1106
- (void)results3;
1107
-
1108
- ip::tcp::resolver::results_type results4 = resolver.resolve("", "", ec);
1109
- (void)results4;
1110
-
1111
- ip::tcp::resolver::results_type results5 =
1112
- resolver.resolve("", "", ip::tcp::resolver::flags());
1113
- (void)results5;
1114
-
1115
- ip::tcp::resolver::results_type results6 =
1116
- resolver.resolve("", "", ip::tcp::resolver::flags(), ec);
1117
- (void)results6;
1118
-
1119
- ip::tcp::resolver::results_type results7 =
1120
- resolver.resolve(ip::tcp::v4(), "", "");
1121
- (void)results7;
1122
-
1123
- ip::tcp::resolver::results_type results8 =
1124
- resolver.resolve(ip::tcp::v4(), "", "", ec);
1125
- (void)results8;
1126
-
1127
- ip::tcp::resolver::results_type results9 =
1128
- resolver.resolve(ip::tcp::v4(), "", "", ip::tcp::resolver::flags());
1129
- (void)results9;
1130
-
1131
- ip::tcp::resolver::results_type results10 =
1132
- resolver.resolve(ip::tcp::v4(), "", "", ip::tcp::resolver::flags(), ec);
1133
- (void)results10;
1134
-
1135
- ip::tcp::resolver::results_type results11 = resolver.resolve(e);
1136
- (void)results11;
1137
-
1138
- ip::tcp::resolver::results_type results12 = resolver.resolve(e, ec);
1139
- (void)results12;
1140
-
1141
- #if !defined(ASIO_NO_DEPRECATED)
1142
- resolver.async_resolve(q, resolve_handler());
1143
- resolver.async_resolve(q, legacy_resolve_handler());
1144
- int i1 = resolver.async_resolve(q, lazy);
1145
- (void)i1;
1146
- #endif // !defined(ASIO_NO_DEPRECATED)
1147
-
1148
- resolver.async_resolve("", "", resolve_handler());
1149
- #if !defined(ASIO_NO_DEPRECATED)
1150
- resolver.async_resolve("", "", legacy_resolve_handler());
1151
- #endif // !defined(ASIO_NO_DEPRECATED)
1152
- int i2 = resolver.async_resolve("", "", lazy);
1153
- (void)i2;
1154
-
1155
- resolver.async_resolve("", "",
1156
- ip::tcp::resolver::flags(), resolve_handler());
1157
- #if !defined(ASIO_NO_DEPRECATED)
1158
- resolver.async_resolve("", "",
1159
- ip::tcp::resolver::flags(), legacy_resolve_handler());
1160
- #endif // !defined(ASIO_NO_DEPRECATED)
1161
- int i3 = resolver.async_resolve("", "",
1162
- ip::tcp::resolver::flags(), lazy);
1163
- (void)i3;
1164
-
1165
- resolver.async_resolve(ip::tcp::v4(), "", "", resolve_handler());
1166
- #if !defined(ASIO_NO_DEPRECATED)
1167
- resolver.async_resolve(ip::tcp::v4(), "", "", legacy_resolve_handler());
1168
- #endif // !defined(ASIO_NO_DEPRECATED)
1169
- int i4 = resolver.async_resolve(ip::tcp::v4(), "", "", lazy);
1170
- (void)i4;
1171
-
1172
- resolver.async_resolve(ip::tcp::v4(),
1173
- "", "", ip::tcp::resolver::flags(), resolve_handler());
1174
- #if !defined(ASIO_NO_DEPRECATED)
1175
- resolver.async_resolve(ip::tcp::v4(),
1176
- "", "", ip::tcp::resolver::flags(), legacy_resolve_handler());
1177
- #endif // !defined(ASIO_NO_DEPRECATED)
1178
- int i5 = resolver.async_resolve(ip::tcp::v4(),
1179
- "", "", ip::tcp::resolver::flags(), lazy);
1180
- (void)i5;
1181
-
1182
- resolver.async_resolve(e, resolve_handler());
1183
- #if !defined(ASIO_NO_DEPRECATED)
1184
- resolver.async_resolve(e, legacy_resolve_handler());
1185
- #endif // !defined(ASIO_NO_DEPRECATED)
1186
- int i6 = resolver.async_resolve(e, lazy);
1187
- (void)i6;
1188
- }
1189
- catch (std::exception&)
1190
- {
1191
- }
1192
- }
1193
-
1194
- } // namespace ip_tcp_resolver_compile
1195
-
1196
- //------------------------------------------------------------------------------
1197
-
1198
- // ip_tcp_resolver_entry_compile test
1199
- // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1200
- // The following test checks that all public member functions on the class
1201
- // ip::tcp::resolver::entry compile and link correctly. Runtime failures are
1202
- // ignored.
1203
-
1204
- namespace ip_tcp_resolver_entry_compile {
1205
-
1206
- void test()
1207
- {
1208
- using namespace asio;
1209
- namespace ip = asio::ip;
1210
- const ip::tcp::endpoint endpoint;
1211
- const std::string host_name;
1212
- const std::string service_name;
1213
- const std::allocator<char> alloc;
1214
-
1215
- try
1216
- {
1217
- // basic_resolver_entry constructors.
1218
-
1219
- const ip::basic_resolver_entry<ip::tcp> entry1;
1220
- ip::basic_resolver_entry<ip::tcp> entry2(endpoint, host_name, service_name);
1221
- ip::basic_resolver_entry<ip::tcp> entry3(entry1);
1222
- #if defined(ASIO_HAS_MOVE)
1223
- ip::basic_resolver_entry<ip::tcp> entry4(std::move(entry2));
1224
- #endif // defined(ASIO_HAS_MOVE)
1225
-
1226
- // basic_resolver_entry functions.
1227
-
1228
- ip::tcp::endpoint e1 = entry1.endpoint();
1229
- (void)e1;
1230
-
1231
- ip::tcp::endpoint e2 = entry1;
1232
- (void)e2;
1233
-
1234
- std::string s1 = entry1.host_name();
1235
- (void)s1;
1236
-
1237
- std::string s2 = entry1.host_name(alloc);
1238
- (void)s2;
1239
-
1240
- std::string s3 = entry1.service_name();
1241
- (void)s3;
1242
-
1243
- std::string s4 = entry1.service_name(alloc);
1244
- (void)s4;
1245
- }
1246
- catch (std::exception&)
1247
- {
1248
- }
1249
- }
1250
-
1251
- } // namespace ip_tcp_resolver_entry_compile
1252
-
1253
- //------------------------------------------------------------------------------
1254
-
1255
- // ip_tcp_iostream_compile test
1256
- // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1257
- // The following test checks that all public types and member functions on the
1258
- // class ip::tcp::iostream compile and link correctly. Runtime failures are
1259
- // ignored.
1260
-
1261
- namespace ip_tcp_iostream_compile {
1262
-
1263
- void test()
1264
- {
1265
- #if !defined(ASIO_NO_IOSTREAM)
1266
- using namespace asio;
1267
- namespace ip = asio::ip;
1268
-
1269
- asio::io_context ioc;
1270
- asio::ip::tcp::socket sock(ioc);
1271
-
1272
- // basic_socket_iostream typedefs.
1273
-
1274
- (void)static_cast<ip::tcp::iostream::protocol_type*>(0);
1275
- (void)static_cast<ip::tcp::iostream::endpoint_type*>(0);
1276
- (void)static_cast<ip::tcp::iostream::clock_type*>(0);
1277
- (void)static_cast<ip::tcp::iostream::time_point*>(0);
1278
- (void)static_cast<ip::tcp::iostream::duration*>(0);
1279
- (void)static_cast<ip::tcp::iostream::traits_type*>(0);
1280
-
1281
- // basic_socket_iostream constructors.
1282
-
1283
- ip::tcp::iostream ios1;
1284
-
1285
- #if defined(ASIO_HAS_STD_IOSTREAM_MOVE)
1286
- ip::tcp::iostream ios2(std::move(sock));
1287
- #endif // defined(ASIO_HAS_STD_IOSTREAM_MOVE)
1288
-
1289
- ip::tcp::iostream ios3("hostname", "service");
1290
-
1291
- // basic_socket_iostream operators.
1292
-
1293
- #if defined(ASIO_HAS_STD_IOSTREAM_MOVE)
1294
- ios1 = ip::tcp::iostream();
1295
-
1296
- ios2 = std::move(ios1);
1297
- #endif // defined(ASIO_HAS_STD_IOSTREAM_MOVE)
1298
-
1299
- // basic_socket_iostream members.
1300
-
1301
- ios1.connect("hostname", "service");
1302
-
1303
- ios1.close();
1304
-
1305
- (void)static_cast<std::streambuf*>(ios1.rdbuf());
1306
-
1307
- basic_socket<ip::tcp>& sref = ios1.socket();
1308
- (void)sref;
1309
-
1310
- asio::error_code ec = ios1.error();
1311
- (void)ec;
1312
-
1313
- ip::tcp::iostream::time_point tp = ios1.expiry();
1314
- (void)tp;
1315
-
1316
- ios1.expires_at(tp);
1317
-
1318
- ip::tcp::iostream::duration d;
1319
- ios1.expires_after(d);
1320
-
1321
- // iostream operators.
1322
-
1323
- int i = 0;
1324
- ios1 >> i;
1325
- ios1 << i;
1326
- #endif // !defined(ASIO_NO_IOSTREAM)
1327
- }
1328
-
1329
- } // namespace ip_tcp_iostream_compile
1330
-
1331
- //------------------------------------------------------------------------------
1332
-
1333
- ASIO_TEST_SUITE
1334
- (
1335
- "ip/tcp",
1336
- ASIO_TEST_CASE(ip_tcp_compile::test)
1337
- ASIO_TEST_CASE(ip_tcp_runtime::test)
1338
- ASIO_TEST_CASE(ip_tcp_socket_compile::test)
1339
- ASIO_TEST_CASE(ip_tcp_socket_runtime::test)
1340
- ASIO_TEST_CASE(ip_tcp_acceptor_compile::test)
1341
- ASIO_TEST_CASE(ip_tcp_acceptor_runtime::test)
1342
- ASIO_TEST_CASE(ip_tcp_resolver_compile::test)
1343
- ASIO_TEST_CASE(ip_tcp_resolver_entry_compile::test)
1344
- ASIO_TEST_CASE(ip_tcp_resolver_entry_compile::test)
1345
- ASIO_COMPILE_TEST_CASE(ip_tcp_iostream_compile::test)
1346
- )