couchbase 3.3.0 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2221) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +37 -13
  3. data/ext/couchbase/CMakeLists.txt +367 -86
  4. data/ext/couchbase/cmake/CompilerWarnings.cmake +11 -4
  5. data/ext/couchbase/cmake/Documentation.cmake +35 -0
  6. data/ext/couchbase/cmake/OpenSSL.cmake +23 -0
  7. data/ext/couchbase/cmake/Testing.cmake +61 -0
  8. data/ext/couchbase/cmake/ThirdPartyDependencies.cmake +1 -0
  9. data/ext/couchbase/cmake/VersionInfo.cmake +13 -1
  10. data/ext/couchbase/cmake/build_version.hxx.in +3 -0
  11. data/ext/couchbase/core/CMakeLists.txt +0 -0
  12. data/ext/couchbase/core/agent.cxx +556 -0
  13. data/ext/couchbase/core/agent.hxx +165 -0
  14. data/ext/couchbase/core/agent_config.cxx +36 -0
  15. data/ext/couchbase/core/agent_config.hxx +44 -0
  16. data/ext/couchbase/core/agent_group.cxx +219 -0
  17. data/ext/couchbase/core/agent_group.hxx +79 -0
  18. data/ext/couchbase/core/agent_group_config.cxx +35 -0
  19. data/ext/couchbase/core/agent_group_config.hxx +45 -0
  20. data/ext/couchbase/core/agent_unit_test_api.hxx +37 -0
  21. data/ext/couchbase/core/analytics_query_options.cxx +72 -0
  22. data/ext/couchbase/core/analytics_query_options.hxx +74 -0
  23. data/ext/couchbase/core/analytics_scan_consistency.hxx +26 -0
  24. data/ext/couchbase/core/bucket.cxx +891 -0
  25. data/ext/couchbase/core/bucket.hxx +172 -0
  26. data/ext/couchbase/core/capella_ca.hxx +43 -0
  27. data/ext/couchbase/core/cluster.cxx +181 -0
  28. data/ext/couchbase/core/cluster.hxx +496 -0
  29. data/ext/couchbase/core/cluster_agent.cxx +36 -0
  30. data/ext/couchbase/core/cluster_agent.hxx +34 -0
  31. data/ext/couchbase/core/cluster_agent_config.cxx +35 -0
  32. data/ext/couchbase/core/cluster_agent_config.hxx +43 -0
  33. data/ext/couchbase/core/cluster_options.cxx +50 -0
  34. data/ext/couchbase/core/cluster_options.hxx +93 -0
  35. data/ext/couchbase/core/cluster_state.hxx +25 -0
  36. data/ext/couchbase/core/collection_id_cache_entry.hxx +37 -0
  37. data/ext/couchbase/core/collections_component.cxx +439 -0
  38. data/ext/couchbase/core/collections_component.hxx +81 -0
  39. data/ext/couchbase/core/collections_component_unit_test_api.hxx +36 -0
  40. data/ext/couchbase/core/collections_options.hxx +87 -0
  41. data/ext/couchbase/core/config_listener.hxx +31 -0
  42. data/ext/couchbase/core/config_profile.cxx +25 -0
  43. data/ext/couchbase/core/config_profile.hxx +92 -0
  44. data/ext/couchbase/core/core_sdk_shim.cxx +28 -0
  45. data/ext/couchbase/core/core_sdk_shim.hxx +30 -0
  46. data/ext/couchbase/core/crud_component.cxx +367 -0
  47. data/ext/couchbase/core/crud_component.hxx +60 -0
  48. data/ext/couchbase/core/crud_options.hxx +574 -0
  49. data/ext/couchbase/core/crypto/CMakeLists.txt +12 -0
  50. data/ext/couchbase/core/crypto/cbcrypto.cc +897 -0
  51. data/ext/couchbase/core/crypto/cbcrypto.h +88 -0
  52. data/ext/couchbase/core/design_document_namespace.hxx +26 -0
  53. data/ext/couchbase/core/design_document_namespace_fmt.hxx +47 -0
  54. data/ext/couchbase/core/diagnostics.hxx +97 -0
  55. data/ext/couchbase/core/diagnostics_fmt.hxx +113 -0
  56. data/ext/couchbase/core/diagnostics_json.hxx +100 -0
  57. data/ext/couchbase/core/diagntostics_options.hxx +55 -0
  58. data/ext/couchbase/core/dispatcher.cxx +37 -0
  59. data/ext/couchbase/core/dispatcher.hxx +43 -0
  60. data/ext/couchbase/core/document_id.cxx +102 -0
  61. data/ext/couchbase/core/document_id.hxx +119 -0
  62. data/ext/couchbase/core/document_id_fmt.hxx +37 -0
  63. data/ext/couchbase/core/durability_options.hxx +110 -0
  64. data/ext/couchbase/core/error_context/analytics.hxx +52 -0
  65. data/ext/couchbase/core/error_context/http.hxx +48 -0
  66. data/ext/couchbase/core/error_context/key_value.cxx +58 -0
  67. data/ext/couchbase/core/error_context/key_value.hxx +83 -0
  68. data/ext/couchbase/core/error_context/query.hxx +52 -0
  69. data/ext/couchbase/core/error_context/search.hxx +51 -0
  70. data/ext/couchbase/core/error_context/view.hxx +52 -0
  71. data/ext/couchbase/core/free_form_http_request.cxx +81 -0
  72. data/ext/couchbase/core/free_form_http_request.hxx +90 -0
  73. data/ext/couchbase/core/impl/analytics_error_category.cxx +62 -0
  74. data/ext/couchbase/core/impl/append.cxx +87 -0
  75. data/ext/couchbase/core/impl/best_effort_retry_strategy.cxx +109 -0
  76. data/ext/couchbase/core/impl/bootstrap_state_listener.hxx +39 -0
  77. data/ext/couchbase/core/impl/build_deferred_query_indexes.cxx +92 -0
  78. data/ext/couchbase/core/impl/cluster.cxx +185 -0
  79. data/ext/couchbase/core/impl/collection_query_index_manager.cxx +93 -0
  80. data/ext/couchbase/core/impl/common_error_category.cxx +88 -0
  81. data/ext/couchbase/core/impl/configuration_profiles_registry.cxx +73 -0
  82. data/ext/couchbase/core/impl/create_query_index.cxx +119 -0
  83. data/ext/couchbase/core/impl/decrement.cxx +96 -0
  84. data/ext/couchbase/core/impl/dns_srv_tracker.cxx +147 -0
  85. data/ext/couchbase/core/impl/dns_srv_tracker.hxx +68 -0
  86. data/ext/couchbase/core/impl/drop_query_index.cxx +108 -0
  87. data/ext/couchbase/core/impl/exists.cxx +47 -0
  88. data/ext/couchbase/core/impl/expiry.cxx +99 -0
  89. data/ext/couchbase/core/impl/fail_fast_retry_strategy.cxx +41 -0
  90. data/ext/couchbase/core/impl/field_level_encryption_error_category.cxx +63 -0
  91. data/ext/couchbase/core/impl/get.cxx +68 -0
  92. data/ext/couchbase/core/impl/get_all_query_indexes.cxx +76 -0
  93. data/ext/couchbase/core/impl/get_all_replicas.cxx +145 -0
  94. data/ext/couchbase/core/impl/get_all_replicas.hxx +79 -0
  95. data/ext/couchbase/core/impl/get_and_lock.cxx +49 -0
  96. data/ext/couchbase/core/impl/get_and_touch.cxx +49 -0
  97. data/ext/couchbase/core/impl/get_any_replica.cxx +134 -0
  98. data/ext/couchbase/core/impl/get_any_replica.hxx +76 -0
  99. data/ext/couchbase/core/impl/get_replica.cxx +44 -0
  100. data/ext/couchbase/core/impl/get_replica.hxx +52 -0
  101. data/ext/couchbase/core/impl/increment.cxx +96 -0
  102. data/ext/couchbase/core/impl/insert.cxx +90 -0
  103. data/ext/couchbase/core/impl/key_value_error_category.cxx +105 -0
  104. data/ext/couchbase/core/impl/lookup_in.cxx +68 -0
  105. data/ext/couchbase/core/impl/management_error_category.cxx +75 -0
  106. data/ext/couchbase/core/impl/mutate_in.cxx +125 -0
  107. data/ext/couchbase/core/impl/network_error_category.cxx +73 -0
  108. data/ext/couchbase/core/impl/observe_poll.cxx +355 -0
  109. data/ext/couchbase/core/impl/observe_poll.hxx +49 -0
  110. data/ext/couchbase/core/impl/observe_seqno.cxx +47 -0
  111. data/ext/couchbase/core/impl/observe_seqno.hxx +63 -0
  112. data/ext/couchbase/core/impl/prepend.cxx +87 -0
  113. data/ext/couchbase/core/impl/query.cxx +245 -0
  114. data/ext/couchbase/core/impl/query_error_category.cxx +55 -0
  115. data/ext/couchbase/core/impl/remove.cxx +86 -0
  116. data/ext/couchbase/core/impl/replace.cxx +102 -0
  117. data/ext/couchbase/core/impl/retry_action.cxx +39 -0
  118. data/ext/couchbase/core/impl/retry_reason.cxx +85 -0
  119. data/ext/couchbase/core/impl/search_error_category.cxx +51 -0
  120. data/ext/couchbase/core/impl/streaming_json_lexter_error_category.cxx +102 -0
  121. data/ext/couchbase/core/impl/subdoc/array_add_unique.cxx +36 -0
  122. data/ext/couchbase/core/impl/subdoc/array_append.cxx +37 -0
  123. data/ext/couchbase/core/impl/subdoc/array_insert.cxx +37 -0
  124. data/ext/couchbase/core/impl/subdoc/array_prepend.cxx +37 -0
  125. data/ext/couchbase/core/impl/subdoc/command.hxx +41 -0
  126. data/ext/couchbase/core/impl/subdoc/command_bundle.hxx +42 -0
  127. data/ext/couchbase/core/impl/subdoc/count.cxx +36 -0
  128. data/ext/couchbase/core/impl/subdoc/counter.cxx +37 -0
  129. data/ext/couchbase/core/impl/subdoc/exists.cxx +36 -0
  130. data/ext/couchbase/core/impl/subdoc/get.cxx +36 -0
  131. data/ext/couchbase/core/impl/subdoc/insert.cxx +36 -0
  132. data/ext/couchbase/core/impl/subdoc/join_values.cxx +56 -0
  133. data/ext/couchbase/core/impl/subdoc/join_values.hxx +27 -0
  134. data/ext/couchbase/core/impl/subdoc/lookup_in_macro.cxx +117 -0
  135. data/ext/couchbase/core/impl/subdoc/lookup_in_specs.cxx +42 -0
  136. data/ext/couchbase/core/impl/subdoc/mutate_in_macro.cxx +77 -0
  137. data/ext/couchbase/core/impl/subdoc/mutate_in_specs.cxx +42 -0
  138. data/ext/couchbase/core/impl/subdoc/opcode.hxx +47 -0
  139. data/ext/couchbase/core/impl/subdoc/path_flags.hxx +77 -0
  140. data/ext/couchbase/core/impl/subdoc/remove.cxx +36 -0
  141. data/ext/couchbase/core/impl/subdoc/replace.cxx +36 -0
  142. data/ext/couchbase/core/impl/subdoc/upsert.cxx +36 -0
  143. data/ext/couchbase/core/impl/touch.cxx +49 -0
  144. data/ext/couchbase/core/impl/transaction_error_category.cxx +54 -0
  145. data/ext/couchbase/core/impl/transaction_op_error_category.cxx +90 -0
  146. data/ext/couchbase/core/impl/unlock.cxx +47 -0
  147. data/ext/couchbase/core/impl/upsert.cxx +100 -0
  148. data/ext/couchbase/core/impl/view_error_category.cxx +50 -0
  149. data/ext/couchbase/core/impl/watch_query_indexes.cxx +168 -0
  150. data/ext/couchbase/core/impl/with_legacy_durability.hxx +65 -0
  151. data/ext/couchbase/core/io/dns_client.hxx +224 -0
  152. data/ext/couchbase/core/io/dns_codec.hxx +207 -0
  153. data/ext/couchbase/core/io/dns_config.cxx +157 -0
  154. data/ext/couchbase/core/io/dns_config.hxx +68 -0
  155. data/ext/couchbase/core/io/dns_message.hxx +555 -0
  156. data/ext/couchbase/core/io/http_command.hxx +182 -0
  157. data/ext/couchbase/core/io/http_context.hxx +40 -0
  158. data/ext/couchbase/core/io/http_message.hxx +116 -0
  159. data/ext/couchbase/core/io/http_parser.cxx +141 -0
  160. data/ext/couchbase/core/io/http_parser.hxx +55 -0
  161. data/ext/couchbase/core/io/http_session.hxx +552 -0
  162. data/ext/couchbase/core/io/http_session_manager.hxx +388 -0
  163. data/ext/couchbase/core/io/http_traits.hxx +38 -0
  164. data/ext/couchbase/core/io/ip_protocol.hxx +28 -0
  165. data/ext/couchbase/core/io/mcbp_command.hxx +317 -0
  166. data/ext/couchbase/core/io/mcbp_context.hxx +40 -0
  167. data/ext/couchbase/core/io/mcbp_message.cxx +39 -0
  168. data/ext/couchbase/core/io/mcbp_message.hxx +60 -0
  169. data/ext/couchbase/core/io/mcbp_parser.cxx +88 -0
  170. data/ext/couchbase/core/io/mcbp_parser.hxx +45 -0
  171. data/ext/couchbase/core/io/mcbp_session.cxx +1690 -0
  172. data/ext/couchbase/core/io/mcbp_session.hxx +130 -0
  173. data/ext/couchbase/core/io/mcbp_traits.hxx +38 -0
  174. data/ext/couchbase/core/io/query_cache.hxx +71 -0
  175. data/ext/couchbase/core/io/retry_context.hxx +89 -0
  176. data/ext/couchbase/core/io/retry_orchestrator.hxx +97 -0
  177. data/ext/couchbase/core/io/streams.hxx +258 -0
  178. data/ext/couchbase/core/json_string.hxx +82 -0
  179. data/ext/couchbase/core/key_value_config.cxx +35 -0
  180. data/ext/couchbase/core/key_value_config.hxx +40 -0
  181. data/ext/couchbase/core/logger/CMakeLists.txt +9 -0
  182. data/ext/couchbase/core/logger/configuration.hxx +60 -0
  183. data/ext/couchbase/core/logger/custom_rotating_file_sink.cxx +157 -0
  184. data/ext/couchbase/{couchbase → core}/logger/custom_rotating_file_sink.hxx +0 -0
  185. data/ext/couchbase/core/logger/level.hxx +21 -0
  186. data/ext/couchbase/core/logger/logger.cxx +340 -0
  187. data/ext/couchbase/core/logger/logger.hxx +240 -0
  188. data/ext/couchbase/core/management/analytics_dataset.hxx +30 -0
  189. data/ext/couchbase/core/management/analytics_index.hxx +30 -0
  190. data/ext/couchbase/core/management/analytics_link.hxx +22 -0
  191. data/ext/couchbase/core/management/analytics_link_azure_blob_external.cxx +68 -0
  192. data/ext/couchbase/core/management/analytics_link_azure_blob_external.hxx +76 -0
  193. data/ext/couchbase/core/management/analytics_link_azure_blob_external_json.hxx +52 -0
  194. data/ext/couchbase/core/management/analytics_link_couchbase_remote.cxx +105 -0
  195. data/ext/couchbase/core/management/analytics_link_couchbase_remote.hxx +107 -0
  196. data/ext/couchbase/core/management/analytics_link_couchbase_remote_json.hxx +63 -0
  197. data/ext/couchbase/core/management/analytics_link_s3_external.cxx +58 -0
  198. data/ext/couchbase/core/management/analytics_link_s3_external.hxx +69 -0
  199. data/ext/couchbase/core/management/analytics_link_s3_external_json.hxx +47 -0
  200. data/ext/couchbase/core/management/bucket_settings.hxx +134 -0
  201. data/ext/couchbase/core/management/bucket_settings_json.hxx +123 -0
  202. data/ext/couchbase/core/management/design_document.hxx +41 -0
  203. data/ext/couchbase/core/management/eventing_function.hxx +188 -0
  204. data/ext/couchbase/core/management/eventing_function_json.hxx +212 -0
  205. data/ext/couchbase/core/management/eventing_status.hxx +84 -0
  206. data/ext/couchbase/core/management/eventing_status_json.hxx +77 -0
  207. data/ext/couchbase/core/management/rbac.hxx +77 -0
  208. data/ext/couchbase/core/management/rbac_fmt.hxx +49 -0
  209. data/ext/couchbase/core/management/rbac_json.hxx +179 -0
  210. data/ext/couchbase/core/management/search_index.hxx +38 -0
  211. data/ext/couchbase/core/management/search_index_json.hxx +58 -0
  212. data/ext/couchbase/core/mcbp/barrier_frame.hxx +27 -0
  213. data/ext/couchbase/core/mcbp/big_endian.cxx +73 -0
  214. data/ext/couchbase/core/mcbp/big_endian.hxx +46 -0
  215. data/ext/couchbase/core/mcbp/buffer_writer.cxx +78 -0
  216. data/ext/couchbase/core/mcbp/buffer_writer.hxx +38 -0
  217. data/ext/couchbase/core/mcbp/codec.cxx +501 -0
  218. data/ext/couchbase/core/mcbp/codec.hxx +52 -0
  219. data/ext/couchbase/core/mcbp/command_code.cxx +77 -0
  220. data/ext/couchbase/core/mcbp/command_code.hxx +33 -0
  221. data/ext/couchbase/core/mcbp/completion_token.hxx +69 -0
  222. data/ext/couchbase/core/mcbp/datatype.hxx +40 -0
  223. data/ext/couchbase/core/mcbp/durability_level.hxx +35 -0
  224. data/ext/couchbase/core/mcbp/durability_level_frame.hxx +28 -0
  225. data/ext/couchbase/core/mcbp/durability_timeout_frame.hxx +29 -0
  226. data/ext/couchbase/core/mcbp/frame_type.hxx +41 -0
  227. data/ext/couchbase/core/mcbp/open_tracing_frame.hxx +29 -0
  228. data/ext/couchbase/core/mcbp/operation_consumer.cxx +47 -0
  229. data/ext/couchbase/core/mcbp/operation_consumer.hxx +42 -0
  230. data/ext/couchbase/core/mcbp/operation_queue.cxx +158 -0
  231. data/ext/couchbase/core/mcbp/operation_queue.hxx +57 -0
  232. data/ext/couchbase/core/mcbp/packet.cxx +92 -0
  233. data/ext/couchbase/core/mcbp/packet.hxx +71 -0
  234. data/ext/couchbase/core/mcbp/preserve_expiry_frame.hxx +26 -0
  235. data/ext/couchbase/core/mcbp/queue_callback.hxx +34 -0
  236. data/ext/couchbase/core/mcbp/queue_request.cxx +174 -0
  237. data/ext/couchbase/core/mcbp/queue_request.hxx +120 -0
  238. data/ext/couchbase/core/mcbp/queue_request_connection_info.hxx +29 -0
  239. data/ext/couchbase/core/mcbp/queue_response.hxx +37 -0
  240. data/ext/couchbase/core/mcbp/read_units_frame.hxx +28 -0
  241. data/ext/couchbase/core/mcbp/server_duration.cxx +40 -0
  242. data/ext/couchbase/core/mcbp/server_duration.hxx +32 -0
  243. data/ext/couchbase/core/mcbp/server_duration_frame.hxx +28 -0
  244. data/ext/couchbase/core/mcbp/stream_id_frame.hxx +28 -0
  245. data/ext/couchbase/core/mcbp/unsupported_frame.hxx +32 -0
  246. data/ext/couchbase/core/mcbp/user_impersonation_frame.hxx +30 -0
  247. data/ext/couchbase/core/mcbp/write_units_frame.hxx +29 -0
  248. data/ext/couchbase/core/meta/CMakeLists.txt +17 -0
  249. data/ext/couchbase/core/meta/features.hxx +31 -0
  250. data/ext/couchbase/core/meta/version.cxx +264 -0
  251. data/ext/couchbase/core/meta/version.hxx +56 -0
  252. data/ext/couchbase/core/metrics/CMakeLists.txt +13 -0
  253. data/ext/couchbase/core/metrics/logging_meter.cxx +235 -0
  254. data/ext/couchbase/core/metrics/logging_meter.hxx +60 -0
  255. data/ext/couchbase/core/metrics/logging_meter_options.hxx +28 -0
  256. data/ext/couchbase/core/metrics/noop_meter.hxx +47 -0
  257. data/ext/couchbase/core/n1ql_query_options.cxx +94 -0
  258. data/ext/couchbase/core/n1ql_query_options.hxx +78 -0
  259. data/ext/couchbase/core/operation_map.hxx +36 -0
  260. data/ext/couchbase/core/operations/document_analytics.cxx +221 -0
  261. data/ext/couchbase/core/operations/document_analytics.hxx +113 -0
  262. data/ext/couchbase/core/operations/document_append.cxx +45 -0
  263. data/ext/couchbase/core/operations/document_append.hxx +78 -0
  264. data/ext/couchbase/core/operations/document_decrement.cxx +53 -0
  265. data/ext/couchbase/core/operations/document_decrement.hxx +81 -0
  266. data/ext/couchbase/core/operations/document_exists.cxx +50 -0
  267. data/ext/couchbase/core/operations/document_exists.hxx +72 -0
  268. data/ext/couchbase/core/operations/document_get.cxx +44 -0
  269. data/ext/couchbase/core/operations/document_get.hxx +62 -0
  270. data/ext/couchbase/core/operations/document_get_all_replicas.hxx +143 -0
  271. data/ext/couchbase/core/operations/document_get_and_lock.cxx +45 -0
  272. data/ext/couchbase/core/operations/document_get_and_lock.hxx +64 -0
  273. data/ext/couchbase/core/operations/document_get_and_touch.cxx +45 -0
  274. data/ext/couchbase/core/operations/document_get_and_touch.hxx +65 -0
  275. data/ext/couchbase/core/operations/document_get_any_replica.hxx +133 -0
  276. data/ext/couchbase/core/operations/document_get_projected.cxx +238 -0
  277. data/ext/couchbase/core/operations/document_get_projected.hxx +68 -0
  278. data/ext/couchbase/core/operations/document_increment.cxx +53 -0
  279. data/ext/couchbase/core/operations/document_increment.hxx +81 -0
  280. data/ext/couchbase/core/operations/document_insert.cxx +51 -0
  281. data/ext/couchbase/core/operations/document_insert.hxx +80 -0
  282. data/ext/couchbase/core/operations/document_lookup_in.cxx +97 -0
  283. data/ext/couchbase/core/operations/document_lookup_in.hxx +77 -0
  284. data/ext/couchbase/core/operations/document_mutate_in.cxx +118 -0
  285. data/ext/couchbase/core/operations/document_mutate_in.hxx +95 -0
  286. data/ext/couchbase/core/operations/document_prepend.cxx +45 -0
  287. data/ext/couchbase/core/operations/document_prepend.hxx +78 -0
  288. data/ext/couchbase/core/operations/document_query.cxx +386 -0
  289. data/ext/couchbase/core/operations/document_query.hxx +128 -0
  290. data/ext/couchbase/core/operations/document_remove.cxx +45 -0
  291. data/ext/couchbase/core/operations/document_remove.hxx +78 -0
  292. data/ext/couchbase/core/operations/document_replace.cxx +55 -0
  293. data/ext/couchbase/core/operations/document_replace.hxx +82 -0
  294. data/ext/couchbase/core/operations/document_search.cxx +312 -0
  295. data/ext/couchbase/core/operations/document_search.hxx +163 -0
  296. data/ext/couchbase/core/operations/document_touch.cxx +43 -0
  297. data/ext/couchbase/core/operations/document_touch.hxx +61 -0
  298. data/ext/couchbase/core/operations/document_unlock.cxx +43 -0
  299. data/ext/couchbase/core/operations/document_unlock.hxx +61 -0
  300. data/ext/couchbase/core/operations/document_upsert.cxx +54 -0
  301. data/ext/couchbase/core/operations/document_upsert.hxx +81 -0
  302. data/ext/couchbase/core/operations/document_view.cxx +197 -0
  303. data/ext/couchbase/core/operations/document_view.hxx +109 -0
  304. data/ext/couchbase/core/operations/http_noop.cxx +64 -0
  305. data/ext/couchbase/core/operations/http_noop.hxx +48 -0
  306. data/ext/couchbase/core/operations/management/CMakeLists.txt +80 -0
  307. data/ext/couchbase/core/operations/management/analytics.hxx +34 -0
  308. data/ext/couchbase/core/operations/management/analytics_dataset_create.cxx +93 -0
  309. data/ext/couchbase/core/operations/management/analytics_dataset_create.hxx +57 -0
  310. data/ext/couchbase/core/operations/management/analytics_dataset_drop.cxx +82 -0
  311. data/ext/couchbase/core/operations/management/analytics_dataset_drop.hxx +54 -0
  312. data/ext/couchbase/core/operations/management/analytics_dataset_get_all.cxx +78 -0
  313. data/ext/couchbase/core/operations/management/analytics_dataset_get_all.hxx +52 -0
  314. data/ext/couchbase/core/operations/management/analytics_dataverse_create.cxx +81 -0
  315. data/ext/couchbase/core/operations/management/analytics_dataverse_create.hxx +53 -0
  316. data/ext/couchbase/core/operations/management/analytics_dataverse_drop.cxx +81 -0
  317. data/ext/couchbase/core/operations/management/analytics_dataverse_drop.hxx +53 -0
  318. data/ext/couchbase/core/operations/management/analytics_get_pending_mutations.cxx +69 -0
  319. data/ext/couchbase/core/operations/management/analytics_get_pending_mutations.hxx +52 -0
  320. data/ext/couchbase/core/operations/management/analytics_index_create.cxx +105 -0
  321. data/ext/couchbase/core/operations/management/analytics_index_create.hxx +56 -0
  322. data/ext/couchbase/core/operations/management/analytics_index_drop.cxx +89 -0
  323. data/ext/couchbase/core/operations/management/analytics_index_drop.hxx +55 -0
  324. data/ext/couchbase/core/operations/management/analytics_index_get_all.cxx +79 -0
  325. data/ext/couchbase/core/operations/management/analytics_index_get_all.hxx +52 -0
  326. data/ext/couchbase/core/operations/management/analytics_link_connect.cxx +81 -0
  327. data/ext/couchbase/core/operations/management/analytics_link_connect.hxx +57 -0
  328. data/ext/couchbase/core/operations/management/analytics_link_create.cxx +86 -0
  329. data/ext/couchbase/core/operations/management/analytics_link_create.hxx +77 -0
  330. data/ext/couchbase/core/operations/management/analytics_link_disconnect.cxx +79 -0
  331. data/ext/couchbase/core/operations/management/analytics_link_disconnect.hxx +56 -0
  332. data/ext/couchbase/core/operations/management/analytics_link_drop.cxx +102 -0
  333. data/ext/couchbase/core/operations/management/analytics_link_drop.hxx +56 -0
  334. data/ext/couchbase/core/operations/management/analytics_link_get_all.cxx +128 -0
  335. data/ext/couchbase/core/operations/management/analytics_link_get_all.hxx +63 -0
  336. data/ext/couchbase/core/operations/management/analytics_link_replace.cxx +86 -0
  337. data/ext/couchbase/core/operations/management/analytics_link_replace.hxx +78 -0
  338. data/ext/couchbase/core/operations/management/analytics_link_utils.hxx +37 -0
  339. data/ext/couchbase/core/operations/management/analytics_problem.hxx +31 -0
  340. data/ext/couchbase/core/operations/management/bucket.hxx +25 -0
  341. data/ext/couchbase/core/operations/management/bucket_create.cxx +171 -0
  342. data/ext/couchbase/core/operations/management/bucket_create.hxx +52 -0
  343. data/ext/couchbase/core/operations/management/bucket_describe.cxx +98 -0
  344. data/ext/couchbase/core/operations/management/bucket_describe.hxx +64 -0
  345. data/ext/couchbase/core/operations/management/bucket_drop.cxx +51 -0
  346. data/ext/couchbase/core/operations/management/bucket_drop.hxx +49 -0
  347. data/ext/couchbase/core/operations/management/bucket_flush.cxx +58 -0
  348. data/ext/couchbase/core/operations/management/bucket_flush.hxx +49 -0
  349. data/ext/couchbase/core/operations/management/bucket_get.cxx +58 -0
  350. data/ext/couchbase/core/operations/management/bucket_get.hxx +51 -0
  351. data/ext/couchbase/core/operations/management/bucket_get_all.cxx +58 -0
  352. data/ext/couchbase/core/operations/management/bucket_get_all.hxx +49 -0
  353. data/ext/couchbase/core/operations/management/bucket_update.cxx +130 -0
  354. data/ext/couchbase/core/operations/management/bucket_update.hxx +52 -0
  355. data/ext/couchbase/core/operations/management/change_password.cxx +55 -0
  356. data/ext/couchbase/core/operations/management/change_password.hxx +50 -0
  357. data/ext/couchbase/core/operations/management/cluster_describe.cxx +89 -0
  358. data/ext/couchbase/core/operations/management/cluster_describe.hxx +72 -0
  359. data/ext/couchbase/core/operations/management/cluster_developer_preview_enable.cxx +43 -0
  360. data/ext/couchbase/core/operations/management/cluster_developer_preview_enable.hxx +48 -0
  361. data/ext/couchbase/core/operations/management/collection_create.cxx +82 -0
  362. data/ext/couchbase/core/operations/management/collection_create.hxx +53 -0
  363. data/ext/couchbase/core/operations/management/collection_drop.cxx +72 -0
  364. data/ext/couchbase/core/operations/management/collection_drop.hxx +52 -0
  365. data/ext/couchbase/core/operations/management/collections.hxx +25 -0
  366. data/ext/couchbase/core/operations/management/collections_manifest_get.cxx +40 -0
  367. data/ext/couchbase/core/operations/management/collections_manifest_get.hxx +53 -0
  368. data/ext/couchbase/core/operations/management/error_utils.cxx +267 -0
  369. data/ext/couchbase/core/operations/management/error_utils.hxx +49 -0
  370. data/ext/couchbase/core/operations/management/eventing.hxx +28 -0
  371. data/ext/couchbase/core/operations/management/eventing_deploy_function.cxx +55 -0
  372. data/ext/couchbase/core/operations/management/eventing_deploy_function.hxx +52 -0
  373. data/ext/couchbase/core/operations/management/eventing_drop_function.cxx +56 -0
  374. data/ext/couchbase/core/operations/management/eventing_drop_function.hxx +52 -0
  375. data/ext/couchbase/core/operations/management/eventing_get_all_functions.cxx +63 -0
  376. data/ext/couchbase/core/operations/management/eventing_get_all_functions.hxx +51 -0
  377. data/ext/couchbase/core/operations/management/eventing_get_function.cxx +55 -0
  378. data/ext/couchbase/core/operations/management/eventing_get_function.hxx +53 -0
  379. data/ext/couchbase/core/operations/management/eventing_get_status.cxx +55 -0
  380. data/ext/couchbase/core/operations/management/eventing_get_status.hxx +53 -0
  381. data/ext/couchbase/core/operations/management/eventing_pause_function.cxx +55 -0
  382. data/ext/couchbase/core/operations/management/eventing_pause_function.hxx +52 -0
  383. data/ext/couchbase/core/operations/management/eventing_problem.hxx +32 -0
  384. data/ext/couchbase/core/operations/management/eventing_resume_function.cxx +55 -0
  385. data/ext/couchbase/core/operations/management/eventing_resume_function.hxx +52 -0
  386. data/ext/couchbase/core/operations/management/eventing_undeploy_function.cxx +55 -0
  387. data/ext/couchbase/core/operations/management/eventing_undeploy_function.hxx +52 -0
  388. data/ext/couchbase/core/operations/management/eventing_upsert_function.cxx +340 -0
  389. data/ext/couchbase/core/operations/management/eventing_upsert_function.hxx +52 -0
  390. data/ext/couchbase/core/operations/management/freeform.cxx +54 -0
  391. data/ext/couchbase/core/operations/management/freeform.hxx +55 -0
  392. data/ext/couchbase/core/operations/management/group_drop.cxx +50 -0
  393. data/ext/couchbase/core/operations/management/group_drop.hxx +49 -0
  394. data/ext/couchbase/core/operations/management/group_get.cxx +59 -0
  395. data/ext/couchbase/core/operations/management/group_get.hxx +50 -0
  396. data/ext/couchbase/core/operations/management/group_get_all.cxx +57 -0
  397. data/ext/couchbase/core/operations/management/group_get_all.hxx +49 -0
  398. data/ext/couchbase/core/operations/management/group_upsert.cxx +95 -0
  399. data/ext/couchbase/core/operations/management/group_upsert.hxx +51 -0
  400. data/ext/couchbase/core/operations/management/query.hxx +25 -0
  401. data/ext/couchbase/core/operations/management/query_index_build.cxx +92 -0
  402. data/ext/couchbase/core/operations/management/query_index_build.hxx +62 -0
  403. data/ext/couchbase/core/operations/management/query_index_build_deferred.hxx +116 -0
  404. data/ext/couchbase/core/operations/management/query_index_create.cxx +146 -0
  405. data/ext/couchbase/core/operations/management/query_index_create.hxx +67 -0
  406. data/ext/couchbase/core/operations/management/query_index_drop.cxx +127 -0
  407. data/ext/couchbase/core/operations/management/query_index_drop.hxx +63 -0
  408. data/ext/couchbase/core/operations/management/query_index_get_all.cxx +129 -0
  409. data/ext/couchbase/core/operations/management/query_index_get_all.hxx +56 -0
  410. data/ext/couchbase/core/operations/management/query_index_get_all_deferred.cxx +96 -0
  411. data/ext/couchbase/core/operations/management/query_index_get_all_deferred.hxx +57 -0
  412. data/ext/couchbase/core/operations/management/role_get_all.cxx +57 -0
  413. data/ext/couchbase/core/operations/management/role_get_all.hxx +49 -0
  414. data/ext/couchbase/core/operations/management/scope_create.cxx +74 -0
  415. data/ext/couchbase/core/operations/management/scope_create.hxx +51 -0
  416. data/ext/couchbase/core/operations/management/scope_drop.cxx +69 -0
  417. data/ext/couchbase/core/operations/management/scope_drop.hxx +51 -0
  418. data/ext/couchbase/core/operations/management/scope_get_all.cxx +61 -0
  419. data/ext/couchbase/core/operations/management/scope_get_all.hxx +51 -0
  420. data/ext/couchbase/core/operations/management/search.hxx +30 -0
  421. data/ext/couchbase/core/operations/management/search_get_stats.cxx +41 -0
  422. data/ext/couchbase/core/operations/management/search_get_stats.hxx +48 -0
  423. data/ext/couchbase/core/operations/management/search_index_analyze_document.cxx +84 -0
  424. data/ext/couchbase/core/operations/management/search_index_analyze_document.hxx +54 -0
  425. data/ext/couchbase/core/operations/management/search_index_control_ingest.cxx +72 -0
  426. data/ext/couchbase/core/operations/management/search_index_control_ingest.hxx +52 -0
  427. data/ext/couchbase/core/operations/management/search_index_control_plan_freeze.cxx +72 -0
  428. data/ext/couchbase/core/operations/management/search_index_control_plan_freeze.hxx +57 -0
  429. data/ext/couchbase/core/operations/management/search_index_control_query.cxx +72 -0
  430. data/ext/couchbase/core/operations/management/search_index_control_query.hxx +52 -0
  431. data/ext/couchbase/core/operations/management/search_index_drop.cxx +71 -0
  432. data/ext/couchbase/core/operations/management/search_index_drop.hxx +51 -0
  433. data/ext/couchbase/core/operations/management/search_index_get.cxx +74 -0
  434. data/ext/couchbase/core/operations/management/search_index_get.hxx +54 -0
  435. data/ext/couchbase/core/operations/management/search_index_get_all.cxx +66 -0
  436. data/ext/couchbase/core/operations/management/search_index_get_all.hxx +51 -0
  437. data/ext/couchbase/core/operations/management/search_index_get_documents_count.cxx +78 -0
  438. data/ext/couchbase/core/operations/management/search_index_get_documents_count.hxx +53 -0
  439. data/ext/couchbase/core/operations/management/search_index_get_stats.cxx +70 -0
  440. data/ext/couchbase/core/operations/management/search_index_get_stats.hxx +52 -0
  441. data/ext/couchbase/core/operations/management/search_index_upsert.cxx +114 -0
  442. data/ext/couchbase/core/operations/management/search_index_upsert.hxx +54 -0
  443. data/ext/couchbase/core/operations/management/user.hxx +29 -0
  444. data/ext/couchbase/core/operations/management/user_drop.cxx +51 -0
  445. data/ext/couchbase/core/operations/management/user_drop.hxx +51 -0
  446. data/ext/couchbase/core/operations/management/user_get.cxx +60 -0
  447. data/ext/couchbase/core/operations/management/user_get.hxx +52 -0
  448. data/ext/couchbase/core/operations/management/user_get_all.cxx +58 -0
  449. data/ext/couchbase/core/operations/management/user_get_all.hxx +51 -0
  450. data/ext/couchbase/core/operations/management/user_upsert.cxx +100 -0
  451. data/ext/couchbase/core/operations/management/user_upsert.hxx +52 -0
  452. data/ext/couchbase/core/operations/management/view.hxx +23 -0
  453. data/ext/couchbase/core/operations/management/view_index_drop.cxx +45 -0
  454. data/ext/couchbase/core/operations/management/view_index_drop.hxx +52 -0
  455. data/ext/couchbase/core/operations/management/view_index_get.cxx +73 -0
  456. data/ext/couchbase/core/operations/management/view_index_get.hxx +53 -0
  457. data/ext/couchbase/core/operations/management/view_index_get_all.cxx +107 -0
  458. data/ext/couchbase/core/operations/management/view_index_get_all.hxx +52 -0
  459. data/ext/couchbase/core/operations/management/view_index_upsert.cxx +70 -0
  460. data/ext/couchbase/core/operations/management/view_index_upsert.hxx +51 -0
  461. data/ext/couchbase/core/operations/mcbp_noop.cxx +38 -0
  462. data/ext/couchbase/core/operations/mcbp_noop.hxx +49 -0
  463. data/ext/couchbase/core/operations/operation_traits.hxx +31 -0
  464. data/ext/couchbase/core/operations.hxx +44 -0
  465. data/ext/couchbase/core/origin.hxx +195 -0
  466. data/ext/couchbase/core/pending_operation.hxx +26 -0
  467. data/ext/couchbase/core/ping_collector.hxx +32 -0
  468. data/ext/couchbase/core/ping_options.hxx +86 -0
  469. data/ext/couchbase/core/ping_reporter.hxx +30 -0
  470. data/ext/couchbase/core/platform/CMakeLists.txt +16 -0
  471. data/ext/couchbase/core/platform/backtrace.c +189 -0
  472. data/ext/couchbase/{couchbase → core}/platform/backtrace.h +0 -0
  473. data/ext/couchbase/core/platform/base64.cc +253 -0
  474. data/ext/couchbase/core/platform/base64.h +52 -0
  475. data/ext/couchbase/core/platform/dirutils.cc +123 -0
  476. data/ext/couchbase/core/platform/dirutils.h +43 -0
  477. data/ext/couchbase/core/platform/random.cc +120 -0
  478. data/ext/couchbase/core/platform/random.h +39 -0
  479. data/ext/couchbase/core/platform/string_hex.cc +101 -0
  480. data/ext/couchbase/core/platform/string_hex.h +50 -0
  481. data/ext/couchbase/core/platform/terminate_handler.cc +125 -0
  482. data/ext/couchbase/core/platform/terminate_handler.h +36 -0
  483. data/ext/couchbase/core/platform/uuid.cc +102 -0
  484. data/ext/couchbase/core/platform/uuid.h +56 -0
  485. data/ext/couchbase/core/protocol/client_opcode.hxx +369 -0
  486. data/ext/couchbase/core/protocol/client_opcode_fmt.hxx +325 -0
  487. data/ext/couchbase/core/protocol/client_request.cxx +38 -0
  488. data/ext/couchbase/core/protocol/client_request.hxx +167 -0
  489. data/ext/couchbase/core/protocol/client_response.cxx +75 -0
  490. data/ext/couchbase/core/protocol/client_response.hxx +210 -0
  491. data/ext/couchbase/core/protocol/cmd_append.cxx +74 -0
  492. data/ext/couchbase/core/protocol/cmd_append.hxx +107 -0
  493. data/ext/couchbase/core/protocol/cmd_cluster_map_change_notification.cxx +53 -0
  494. data/ext/couchbase/core/protocol/cmd_cluster_map_change_notification.hxx +57 -0
  495. data/ext/couchbase/core/protocol/cmd_decrement.cxx +96 -0
  496. data/ext/couchbase/core/protocol/cmd_decrement.hxx +130 -0
  497. data/ext/couchbase/core/protocol/cmd_get.cxx +59 -0
  498. data/ext/couchbase/core/protocol/cmd_get.hxx +96 -0
  499. data/ext/couchbase/core/protocol/cmd_get_and_lock.cxx +66 -0
  500. data/ext/couchbase/core/protocol/cmd_get_and_lock.hxx +112 -0
  501. data/ext/couchbase/core/protocol/cmd_get_and_touch.cxx +66 -0
  502. data/ext/couchbase/core/protocol/cmd_get_and_touch.hxx +112 -0
  503. data/ext/couchbase/core/protocol/cmd_get_cluster_config.cxx +85 -0
  504. data/ext/couchbase/core/protocol/cmd_get_cluster_config.hxx +89 -0
  505. data/ext/couchbase/core/protocol/cmd_get_collection_id.cxx +60 -0
  506. data/ext/couchbase/core/protocol/cmd_get_collection_id.hxx +95 -0
  507. data/ext/couchbase/core/protocol/cmd_get_collections_manifest.cxx +51 -0
  508. data/ext/couchbase/core/protocol/cmd_get_collections_manifest.hxx +84 -0
  509. data/ext/couchbase/core/protocol/cmd_get_error_map.cxx +61 -0
  510. data/ext/couchbase/core/protocol/cmd_get_error_map.hxx +103 -0
  511. data/ext/couchbase/core/protocol/cmd_get_meta.cxx +70 -0
  512. data/ext/couchbase/core/protocol/cmd_get_meta.hxx +117 -0
  513. data/ext/couchbase/core/protocol/cmd_get_replica.cxx +71 -0
  514. data/ext/couchbase/core/protocol/cmd_get_replica.hxx +88 -0
  515. data/ext/couchbase/core/protocol/cmd_hello.cxx +76 -0
  516. data/ext/couchbase/core/protocol/cmd_hello.hxx +140 -0
  517. data/ext/couchbase/core/protocol/cmd_increment.cxx +98 -0
  518. data/ext/couchbase/core/protocol/cmd_increment.hxx +130 -0
  519. data/ext/couchbase/core/protocol/cmd_info.hxx +30 -0
  520. data/ext/couchbase/core/protocol/cmd_insert.cxx +83 -0
  521. data/ext/couchbase/core/protocol/cmd_insert.hxx +124 -0
  522. data/ext/couchbase/core/protocol/cmd_lookup_in.cxx +108 -0
  523. data/ext/couchbase/core/protocol/cmd_lookup_in.hxx +139 -0
  524. data/ext/couchbase/core/protocol/cmd_mutate_in.cxx +163 -0
  525. data/ext/couchbase/core/protocol/cmd_mutate_in.hxx +216 -0
  526. data/ext/couchbase/core/protocol/cmd_noop.cxx +36 -0
  527. data/ext/couchbase/core/protocol/cmd_noop.hxx +75 -0
  528. data/ext/couchbase/core/protocol/cmd_observe_seqno.cxx +92 -0
  529. data/ext/couchbase/core/protocol/cmd_observe_seqno.hxx +132 -0
  530. data/ext/couchbase/core/protocol/cmd_prepend.cxx +73 -0
  531. data/ext/couchbase/core/protocol/cmd_prepend.hxx +103 -0
  532. data/ext/couchbase/core/protocol/cmd_remove.cxx +74 -0
  533. data/ext/couchbase/core/protocol/cmd_remove.hxx +94 -0
  534. data/ext/couchbase/core/protocol/cmd_replace.cxx +92 -0
  535. data/ext/couchbase/core/protocol/cmd_replace.hxx +131 -0
  536. data/ext/couchbase/core/protocol/cmd_sasl_auth.cxx +61 -0
  537. data/ext/couchbase/core/protocol/cmd_sasl_auth.hxx +91 -0
  538. data/ext/couchbase/core/protocol/cmd_sasl_list_mechs.cxx +53 -0
  539. data/ext/couchbase/core/protocol/cmd_sasl_list_mechs.hxx +82 -0
  540. data/ext/couchbase/core/protocol/cmd_sasl_step.cxx +61 -0
  541. data/ext/couchbase/core/protocol/cmd_sasl_step.hxx +91 -0
  542. data/ext/couchbase/core/protocol/cmd_select_bucket.cxx +45 -0
  543. data/ext/couchbase/core/protocol/cmd_select_bucket.hxx +79 -0
  544. data/ext/couchbase/core/protocol/cmd_touch.cxx +53 -0
  545. data/ext/couchbase/core/protocol/cmd_touch.hxx +84 -0
  546. data/ext/couchbase/core/protocol/cmd_unlock.cxx +44 -0
  547. data/ext/couchbase/core/protocol/cmd_unlock.hxx +81 -0
  548. data/ext/couchbase/core/protocol/cmd_upsert.cxx +92 -0
  549. data/ext/couchbase/core/protocol/cmd_upsert.hxx +126 -0
  550. data/ext/couchbase/core/protocol/datatype.hxx +48 -0
  551. data/ext/couchbase/core/protocol/enhanced_error_info.hxx +23 -0
  552. data/ext/couchbase/core/protocol/frame_info_id.hxx +142 -0
  553. data/ext/couchbase/core/protocol/frame_info_id_fmt.hxx +79 -0
  554. data/ext/couchbase/core/protocol/frame_info_utils.cxx +59 -0
  555. data/ext/couchbase/core/protocol/frame_info_utils.hxx +52 -0
  556. data/ext/couchbase/core/protocol/hello_feature.hxx +193 -0
  557. data/ext/couchbase/core/protocol/hello_feature_fmt.hxx +112 -0
  558. data/ext/couchbase/core/protocol/magic.hxx +53 -0
  559. data/ext/couchbase/core/protocol/magic_fmt.hxx +58 -0
  560. data/ext/couchbase/core/protocol/server_opcode.hxx +39 -0
  561. data/ext/couchbase/core/protocol/server_opcode_fmt.hxx +46 -0
  562. data/ext/couchbase/core/protocol/server_request.hxx +121 -0
  563. data/ext/couchbase/core/protocol/status.cxx +202 -0
  564. data/ext/couchbase/core/protocol/status.hxx +118 -0
  565. data/ext/couchbase/core/query_context.hxx +79 -0
  566. data/ext/couchbase/core/range_scan_options.cxx +57 -0
  567. data/ext/couchbase/core/range_scan_options.hxx +139 -0
  568. data/ext/couchbase/core/range_scan_orchestrator.cxx +495 -0
  569. data/ext/couchbase/core/range_scan_orchestrator.hxx +54 -0
  570. data/ext/couchbase/core/range_scan_orchestrator_options.hxx +54 -0
  571. data/ext/couchbase/core/resource_units.hxx +26 -0
  572. data/ext/couchbase/core/response_handler.hxx +49 -0
  573. data/ext/couchbase/core/retry_orchestrator.cxx +52 -0
  574. data/ext/couchbase/core/retry_orchestrator.hxx +35 -0
  575. data/ext/couchbase/core/sasl/CMakeLists.txt +16 -0
  576. data/ext/couchbase/core/sasl/client.cc +50 -0
  577. data/ext/couchbase/core/sasl/client.h +127 -0
  578. data/ext/couchbase/core/sasl/context.cc +34 -0
  579. data/ext/couchbase/core/sasl/context.h +52 -0
  580. data/ext/couchbase/core/sasl/error.h +28 -0
  581. data/ext/couchbase/core/sasl/error_fmt.h +70 -0
  582. data/ext/couchbase/core/sasl/mechanism.cc +45 -0
  583. data/ext/couchbase/core/sasl/mechanism.h +52 -0
  584. data/ext/couchbase/core/sasl/plain/plain.cc +39 -0
  585. data/ext/couchbase/core/sasl/plain/plain.h +54 -0
  586. data/ext/couchbase/core/sasl/scram-sha/scram-sha.cc +372 -0
  587. data/ext/couchbase/core/sasl/scram-sha/scram-sha.h +184 -0
  588. data/ext/couchbase/core/sasl/scram-sha/stringutils.cc +82 -0
  589. data/ext/couchbase/core/sasl/scram-sha/stringutils.h +48 -0
  590. data/ext/couchbase/core/scan_options.hxx +63 -0
  591. data/ext/couchbase/core/scan_result.cxx +71 -0
  592. data/ext/couchbase/core/scan_result.hxx +59 -0
  593. data/ext/couchbase/core/search_highlight_style.hxx +23 -0
  594. data/ext/couchbase/core/search_query_options.cxx +72 -0
  595. data/ext/couchbase/core/search_query_options.hxx +74 -0
  596. data/ext/couchbase/core/search_scan_consistency.hxx +23 -0
  597. data/ext/couchbase/core/seed_config.cxx +39 -0
  598. data/ext/couchbase/core/seed_config.hxx +39 -0
  599. data/ext/couchbase/core/service_type.hxx +31 -0
  600. data/ext/couchbase/core/service_type_fmt.hxx +61 -0
  601. data/ext/couchbase/core/stats_options.hxx +61 -0
  602. data/ext/couchbase/core/subdoc_options.hxx +124 -0
  603. data/ext/couchbase/core/timeout_defaults.hxx +45 -0
  604. data/ext/couchbase/core/topology/capabilities.hxx +43 -0
  605. data/ext/couchbase/core/topology/capabilities_fmt.hxx +106 -0
  606. data/ext/couchbase/core/topology/collections_manifest.hxx +43 -0
  607. data/ext/couchbase/core/topology/collections_manifest_fmt.hxx +52 -0
  608. data/ext/couchbase/core/topology/collections_manifest_json.hxx +53 -0
  609. data/ext/couchbase/core/topology/configuration.cxx +256 -0
  610. data/ext/couchbase/core/topology/configuration.hxx +144 -0
  611. data/ext/couchbase/core/topology/configuration_fmt.hxx +166 -0
  612. data/ext/couchbase/core/topology/configuration_json.hxx +259 -0
  613. data/ext/couchbase/core/topology/error_map.hxx +35 -0
  614. data/ext/couchbase/core/topology/error_map_fmt.hxx +94 -0
  615. data/ext/couchbase/core/topology/error_map_json.hxx +89 -0
  616. data/ext/couchbase/core/tracing/CMakeLists.txt +11 -0
  617. data/ext/couchbase/core/tracing/constants.hxx +286 -0
  618. data/ext/couchbase/core/tracing/noop_tracer.hxx +56 -0
  619. data/ext/couchbase/core/tracing/threshold_logging_options.hxx +68 -0
  620. data/ext/couchbase/core/tracing/threshold_logging_tracer.cxx +438 -0
  621. data/ext/couchbase/core/tracing/threshold_logging_tracer.hxx +52 -0
  622. data/ext/couchbase/core/transactions/active_transaction_record.hxx +180 -0
  623. data/ext/couchbase/core/transactions/async_attempt_context.hxx +175 -0
  624. data/ext/couchbase/core/transactions/atr_cleanup_entry.cxx +460 -0
  625. data/ext/couchbase/core/transactions/atr_ids.cxx +225 -0
  626. data/ext/couchbase/core/transactions/atr_ids.hxx +32 -0
  627. data/ext/couchbase/core/transactions/attempt_context.hxx +195 -0
  628. data/ext/couchbase/core/transactions/attempt_context_impl.cxx +2382 -0
  629. data/ext/couchbase/core/transactions/attempt_context_impl.hxx +608 -0
  630. data/ext/couchbase/core/transactions/attempt_context_testing_hooks.hxx +145 -0
  631. data/ext/couchbase/core/transactions/attempt_state.hxx +112 -0
  632. data/ext/couchbase/core/transactions/binary.cxx +26 -0
  633. data/ext/couchbase/core/transactions/cleanup_testing_hooks.hxx +69 -0
  634. data/ext/couchbase/core/transactions/document_metadata.hxx +106 -0
  635. data/ext/couchbase/core/transactions/durability_level.hxx +91 -0
  636. data/ext/couchbase/core/transactions/error_class.hxx +35 -0
  637. data/ext/couchbase/core/transactions/error_list.hxx +54 -0
  638. data/ext/couchbase/core/transactions/exceptions.cxx +160 -0
  639. data/ext/couchbase/core/transactions/exceptions.hxx +209 -0
  640. data/ext/couchbase/core/transactions/forward_compat.hxx +250 -0
  641. data/ext/couchbase/core/transactions/internal/atr_cleanup_entry.hxx +164 -0
  642. data/ext/couchbase/core/transactions/internal/atr_entry.hxx +178 -0
  643. data/ext/couchbase/core/transactions/internal/binary.hxx +26 -0
  644. data/ext/couchbase/core/transactions/internal/client_record.hxx +85 -0
  645. data/ext/couchbase/core/transactions/internal/doc_record.hxx +99 -0
  646. data/ext/couchbase/core/transactions/internal/exceptions_internal.hxx +393 -0
  647. data/ext/couchbase/core/transactions/internal/logging.hxx +62 -0
  648. data/ext/couchbase/core/transactions/internal/transaction_attempt.hxx +30 -0
  649. data/ext/couchbase/core/transactions/internal/transaction_context.hxx +197 -0
  650. data/ext/couchbase/core/transactions/internal/transaction_fields.hxx +71 -0
  651. data/ext/couchbase/core/transactions/internal/transactions_cleanup.hxx +159 -0
  652. data/ext/couchbase/core/transactions/internal/utils.hxx +311 -0
  653. data/ext/couchbase/core/transactions/result.cxx +79 -0
  654. data/ext/couchbase/core/transactions/result.hxx +296 -0
  655. data/ext/couchbase/core/transactions/staged_mutation.cxx +416 -0
  656. data/ext/couchbase/core/transactions/staged_mutation.hxx +126 -0
  657. data/ext/couchbase/core/transactions/transaction_attempt.cxx +29 -0
  658. data/ext/couchbase/core/transactions/transaction_context.cxx +307 -0
  659. data/ext/couchbase/core/transactions/transaction_get_result.cxx +218 -0
  660. data/ext/couchbase/core/transactions/transaction_get_result.hxx +289 -0
  661. data/ext/couchbase/core/transactions/transaction_links.cxx +27 -0
  662. data/ext/couchbase/core/transactions/transaction_links.hxx +252 -0
  663. data/ext/couchbase/core/transactions/transaction_options.cxx +38 -0
  664. data/ext/couchbase/core/transactions/transactions.cxx +184 -0
  665. data/ext/couchbase/core/transactions/transactions_cleanup.cxx +592 -0
  666. data/ext/couchbase/core/transactions/transactions_config.cxx +81 -0
  667. data/ext/couchbase/core/transactions/uid_generator.cxx +27 -0
  668. data/ext/couchbase/core/transactions/uid_generator.hxx +29 -0
  669. data/ext/couchbase/core/transactions/utils.cxx +123 -0
  670. data/ext/couchbase/core/transactions/waitable_op_list.hxx +189 -0
  671. data/ext/couchbase/core/transactions.hxx +255 -0
  672. data/ext/couchbase/core/utils/binary.cxx +27 -0
  673. data/ext/couchbase/core/utils/binary.hxx +57 -0
  674. data/ext/couchbase/core/utils/byteswap.hxx +49 -0
  675. data/ext/couchbase/core/utils/connection_string.cxx +430 -0
  676. data/ext/couchbase/core/utils/connection_string.hxx +76 -0
  677. data/ext/couchbase/core/utils/crc32.hxx +56 -0
  678. data/ext/couchbase/core/utils/duration_parser.cxx +193 -0
  679. data/ext/couchbase/core/utils/duration_parser.hxx +45 -0
  680. data/ext/couchbase/core/utils/join_strings.hxx +65 -0
  681. data/ext/couchbase/core/utils/json.cxx +291 -0
  682. data/ext/couchbase/core/utils/json.hxx +43 -0
  683. data/ext/couchbase/core/utils/json_stream_control.hxx +32 -0
  684. data/ext/couchbase/core/utils/json_streaming_lexer.cxx +398 -0
  685. data/ext/couchbase/core/utils/json_streaming_lexer.hxx +60 -0
  686. data/ext/couchbase/core/utils/keyspace.hxx +55 -0
  687. data/ext/couchbase/core/utils/movable_function.hxx +121 -0
  688. data/ext/couchbase/core/utils/mutation_token.cxx +33 -0
  689. data/ext/couchbase/core/utils/mutation_token.hxx +29 -0
  690. data/ext/couchbase/core/utils/name_codec.hxx +41 -0
  691. data/ext/couchbase/core/utils/split_string.cxx +35 -0
  692. data/ext/couchbase/core/utils/split_string.hxx +27 -0
  693. data/ext/couchbase/core/utils/unsigned_leb128.hxx +183 -0
  694. data/ext/couchbase/core/utils/url_codec.cxx +405 -0
  695. data/ext/couchbase/core/utils/url_codec.hxx +72 -0
  696. data/ext/couchbase/core/view_on_error.hxx +27 -0
  697. data/ext/couchbase/core/view_query_options.cxx +72 -0
  698. data/ext/couchbase/core/view_query_options.hxx +78 -0
  699. data/ext/couchbase/core/view_scan_consistency.hxx +27 -0
  700. data/ext/couchbase/core/view_sort_order.hxx +23 -0
  701. data/ext/couchbase/core/wait_until_ready_options.hxx +52 -0
  702. data/ext/couchbase/couchbase/append_options.hxx +123 -0
  703. data/ext/couchbase/couchbase/behavior_options.hxx +79 -0
  704. data/ext/couchbase/couchbase/best_effort_retry_strategy.hxx +64 -0
  705. data/ext/couchbase/couchbase/binary_collection.hxx +327 -0
  706. data/ext/couchbase/couchbase/bucket.hxx +55 -494
  707. data/ext/couchbase/couchbase/build_query_index_options.hxx +99 -0
  708. data/ext/couchbase/couchbase/cas.hxx +74 -8
  709. data/ext/couchbase/couchbase/certificate_authenticator.hxx +39 -0
  710. data/ext/couchbase/couchbase/cluster.hxx +156 -370
  711. data/ext/couchbase/couchbase/cluster_options.hxx +315 -51
  712. data/ext/couchbase/couchbase/codec/binary_noop_serializer.hxx +47 -0
  713. data/ext/couchbase/couchbase/codec/codec_flags.hxx +145 -0
  714. data/ext/couchbase/couchbase/codec/default_json_transcoder.hxx +36 -0
  715. data/ext/couchbase/couchbase/codec/encoded_value.hxx +31 -0
  716. data/ext/couchbase/couchbase/codec/json_transcoder.hxx +49 -0
  717. data/ext/couchbase/couchbase/codec/raw_binary_transcoder.hxx +54 -0
  718. data/ext/couchbase/couchbase/codec/serializer_traits.hxx +31 -0
  719. data/ext/couchbase/couchbase/codec/tao_json_serializer.hxx +81 -0
  720. data/ext/couchbase/couchbase/codec/transcoder_traits.hxx +31 -0
  721. data/ext/couchbase/couchbase/collection.hxx +1031 -0
  722. data/ext/couchbase/couchbase/collection_query_index_manager.hxx +218 -0
  723. data/ext/couchbase/couchbase/common_durability_options.hxx +108 -0
  724. data/ext/couchbase/couchbase/common_options.hxx +112 -0
  725. data/ext/couchbase/couchbase/compression_options.hxx +65 -0
  726. data/ext/couchbase/couchbase/configuration_profile.hxx +44 -0
  727. data/ext/couchbase/couchbase/configuration_profiles_registry.hxx +61 -0
  728. data/ext/couchbase/couchbase/counter_result.hxx +73 -0
  729. data/ext/couchbase/couchbase/create_primary_query_index_options.hxx +166 -0
  730. data/ext/couchbase/couchbase/create_query_index_options.hxx +172 -0
  731. data/ext/couchbase/couchbase/decrement_options.hxx +166 -0
  732. data/ext/couchbase/couchbase/dns_options.hxx +65 -0
  733. data/ext/couchbase/couchbase/drop_primary_query_index_options.hxx +129 -0
  734. data/ext/couchbase/couchbase/drop_query_index_options.hxx +116 -0
  735. data/ext/couchbase/couchbase/durability_level.hxx +64 -0
  736. data/ext/couchbase/couchbase/error_codes.hxx +1223 -0
  737. data/ext/couchbase/couchbase/error_context.hxx +173 -0
  738. data/ext/couchbase/couchbase/exists_options.hxx +97 -0
  739. data/ext/couchbase/couchbase/exists_result.hxx +72 -0
  740. data/ext/couchbase/couchbase/expiry.hxx +55 -0
  741. data/ext/couchbase/couchbase/fail_fast_retry_strategy.hxx +37 -0
  742. data/ext/couchbase/couchbase/fmt/cas.hxx +37 -0
  743. data/ext/couchbase/couchbase/fmt/durability_level.hxx +52 -0
  744. data/ext/couchbase/couchbase/fmt/key_value_extended_error_info.hxx +46 -0
  745. data/ext/couchbase/couchbase/fmt/key_value_status_code.hxx +258 -0
  746. data/ext/couchbase/couchbase/fmt/mutation_token.hxx +38 -0
  747. data/ext/couchbase/couchbase/fmt/query_scan_consistency.hxx +46 -0
  748. data/ext/couchbase/couchbase/fmt/query_status.hxx +70 -0
  749. data/ext/couchbase/couchbase/fmt/retry_reason.hxx +103 -0
  750. data/ext/couchbase/couchbase/fmt/tls_verify_mode.hxx +46 -0
  751. data/ext/couchbase/couchbase/get_all_query_indexes_options.hxx +100 -0
  752. data/ext/couchbase/couchbase/get_all_replicas_options.hxx +102 -0
  753. data/ext/couchbase/couchbase/get_and_lock_options.hxx +94 -0
  754. data/ext/couchbase/couchbase/get_and_touch_options.hxx +94 -0
  755. data/ext/couchbase/couchbase/get_any_replica_options.hxx +93 -0
  756. data/ext/couchbase/couchbase/get_options.hxx +137 -0
  757. data/ext/couchbase/couchbase/get_replica_result.hxx +117 -0
  758. data/ext/couchbase/couchbase/get_result.hxx +126 -0
  759. data/ext/couchbase/couchbase/increment_options.hxx +166 -0
  760. data/ext/couchbase/couchbase/insert_options.hxx +136 -0
  761. data/ext/couchbase/couchbase/ip_protocol.hxx +27 -0
  762. data/ext/couchbase/couchbase/key_value_error_context.hxx +224 -0
  763. data/ext/couchbase/couchbase/key_value_error_map_attribute.hxx +124 -0
  764. data/ext/couchbase/couchbase/key_value_error_map_info.hxx +138 -0
  765. data/ext/couchbase/couchbase/key_value_extended_error_info.hxx +86 -0
  766. data/ext/couchbase/couchbase/key_value_status_code.hxx +107 -0
  767. data/ext/couchbase/couchbase/lookup_in_options.hxx +119 -0
  768. data/ext/couchbase/couchbase/lookup_in_result.hxx +255 -0
  769. data/ext/couchbase/couchbase/lookup_in_specs.hxx +147 -0
  770. data/ext/couchbase/couchbase/manager_error_context.hxx +136 -0
  771. data/ext/couchbase/couchbase/metrics/meter.hxx +16 -0
  772. data/ext/couchbase/couchbase/metrics/otel_meter.hxx +131 -0
  773. data/ext/couchbase/couchbase/metrics_options.hxx +71 -0
  774. data/ext/couchbase/couchbase/mutate_in_options.hxx +233 -0
  775. data/ext/couchbase/couchbase/mutate_in_result.hxx +173 -0
  776. data/ext/couchbase/couchbase/mutate_in_specs.hxx +528 -0
  777. data/ext/couchbase/couchbase/mutation_result.hxx +73 -0
  778. data/ext/couchbase/couchbase/mutation_state.hxx +73 -0
  779. data/ext/couchbase/couchbase/mutation_token.hxx +93 -6
  780. data/ext/couchbase/couchbase/network_options.hxx +114 -0
  781. data/ext/couchbase/couchbase/password_authenticator.hxx +47 -0
  782. data/ext/couchbase/couchbase/persist_to.hxx +73 -0
  783. data/ext/couchbase/couchbase/prepend_options.hxx +124 -0
  784. data/ext/couchbase/couchbase/query_error_context.hxx +143 -0
  785. data/ext/couchbase/couchbase/query_index_manager.hxx +254 -0
  786. data/ext/couchbase/couchbase/query_meta_data.hxx +171 -0
  787. data/ext/couchbase/couchbase/query_metrics.hxx +179 -0
  788. data/ext/couchbase/couchbase/query_options.hxx +575 -0
  789. data/ext/couchbase/couchbase/query_profile.hxx +52 -0
  790. data/ext/couchbase/couchbase/query_result.hxx +102 -0
  791. data/ext/couchbase/couchbase/query_scan_consistency.hxx +25 -2
  792. data/ext/couchbase/couchbase/query_status.hxx +42 -0
  793. data/ext/couchbase/couchbase/query_warning.hxx +115 -0
  794. data/ext/couchbase/couchbase/remove_options.hxx +123 -0
  795. data/ext/couchbase/couchbase/replace_options.hxx +184 -0
  796. data/ext/couchbase/couchbase/replicate_to.hxx +55 -0
  797. data/ext/couchbase/couchbase/result.hxx +66 -0
  798. data/ext/couchbase/couchbase/retry_action.hxx +41 -0
  799. data/ext/couchbase/couchbase/retry_reason.hxx +107 -0
  800. data/ext/couchbase/couchbase/retry_request.hxx +39 -0
  801. data/ext/couchbase/couchbase/retry_strategy.hxx +35 -0
  802. data/ext/couchbase/couchbase/scope.hxx +149 -0
  803. data/ext/couchbase/couchbase/security_options.hxx +68 -0
  804. data/ext/couchbase/couchbase/store_semantics.hxx +63 -0
  805. data/ext/couchbase/couchbase/subdoc/array_add_unique.hxx +105 -0
  806. data/ext/couchbase/couchbase/subdoc/array_append.hxx +89 -0
  807. data/ext/couchbase/couchbase/subdoc/array_insert.hxx +90 -0
  808. data/ext/couchbase/couchbase/subdoc/array_prepend.hxx +90 -0
  809. data/ext/couchbase/couchbase/subdoc/count.hxx +70 -0
  810. data/ext/couchbase/couchbase/subdoc/counter.hxx +88 -0
  811. data/ext/couchbase/couchbase/subdoc/exists.hxx +70 -0
  812. data/ext/couchbase/couchbase/subdoc/fwd/command.hxx +25 -0
  813. data/ext/couchbase/couchbase/subdoc/fwd/command_bundle.hxx +25 -0
  814. data/ext/couchbase/couchbase/subdoc/get.hxx +78 -0
  815. data/ext/couchbase/couchbase/subdoc/insert.hxx +105 -0
  816. data/ext/couchbase/couchbase/subdoc/lookup_in_macro.hxx +66 -0
  817. data/ext/couchbase/couchbase/subdoc/mutate_in_macro.hxx +54 -0
  818. data/ext/couchbase/couchbase/subdoc/remove.hxx +70 -0
  819. data/ext/couchbase/couchbase/subdoc/replace.hxx +89 -0
  820. data/ext/couchbase/couchbase/subdoc/upsert.hxx +105 -0
  821. data/ext/couchbase/couchbase/subdocument_error_context.hxx +144 -0
  822. data/ext/couchbase/couchbase/timeout_options.hxx +141 -0
  823. data/ext/couchbase/couchbase/tls_verify_mode.hxx +26 -0
  824. data/ext/couchbase/couchbase/touch_options.hxx +94 -0
  825. data/ext/couchbase/couchbase/tracing/otel_tracer.hxx +85 -0
  826. data/ext/couchbase/couchbase/tracing/request_tracer.hxx +17 -2
  827. data/ext/couchbase/couchbase/tracing_options.hxx +174 -0
  828. data/ext/couchbase/couchbase/transaction_error_context.hxx +49 -0
  829. data/ext/couchbase/couchbase/transaction_op_error_context.hxx +76 -0
  830. data/ext/couchbase/couchbase/transactions/async_attempt_context.hxx +78 -0
  831. data/ext/couchbase/couchbase/transactions/attempt_context.hxx +79 -0
  832. data/ext/couchbase/couchbase/transactions/transaction_get_result.hxx +133 -0
  833. data/ext/couchbase/couchbase/transactions/transaction_keyspace.hxx +101 -0
  834. data/ext/couchbase/couchbase/transactions/transaction_options.hxx +115 -0
  835. data/ext/couchbase/couchbase/transactions/transaction_query_options.hxx +159 -0
  836. data/ext/couchbase/couchbase/transactions/transaction_query_result.hxx +36 -0
  837. data/ext/couchbase/couchbase/transactions/transaction_result.hxx +34 -0
  838. data/ext/couchbase/couchbase/transactions/transactions_cleanup_config.hxx +140 -0
  839. data/ext/couchbase/couchbase/transactions/transactions_config.hxx +255 -0
  840. data/ext/couchbase/couchbase/transactions/transactions_query_config.hxx +61 -0
  841. data/ext/couchbase/couchbase/transactions.hxx +43 -0
  842. data/ext/couchbase/couchbase/unlock_options.hxx +97 -0
  843. data/ext/couchbase/couchbase/upsert_options.hxx +158 -0
  844. data/ext/couchbase/couchbase/wan_development_configuration_profile.hxx +44 -0
  845. data/ext/couchbase/couchbase/watch_query_indexes_options.hxx +115 -0
  846. data/ext/couchbase/test/CMakeLists.txt +19 -0
  847. data/ext/couchbase/test/another_simple_object.hxx +50 -0
  848. data/ext/couchbase/test/benchmark_integration_get.cxx +5 -6
  849. data/ext/couchbase/test/profile.hxx +62 -0
  850. data/ext/couchbase/test/simple_object.hxx +53 -0
  851. data/ext/couchbase/test/test_helper.hxx +8 -0
  852. data/ext/couchbase/test/test_helper_integration.hxx +1 -1
  853. data/ext/couchbase/test/test_integration_analytics.cxx +261 -0
  854. data/ext/couchbase/test/test_integration_arithmetic.cxx +119 -20
  855. data/ext/couchbase/test/test_integration_binary_operations.cxx +26 -39
  856. data/ext/couchbase/test/test_integration_collections.cxx +43 -45
  857. data/ext/couchbase/test/test_integration_connect.cxx +35 -25
  858. data/ext/couchbase/test/test_integration_crud.cxx +403 -187
  859. data/ext/couchbase/test/test_integration_diagnostics.cxx +119 -48
  860. data/ext/couchbase/test/test_integration_durability.cxx +171 -26
  861. data/ext/couchbase/test/test_integration_management.cxx +1474 -849
  862. data/ext/couchbase/test/test_integration_meter.cxx +182 -0
  863. data/ext/couchbase/test/test_integration_query.cxx +266 -86
  864. data/ext/couchbase/test/test_integration_range_scan.cxx +1067 -0
  865. data/ext/couchbase/test/test_integration_read_replica.cxx +232 -0
  866. data/ext/couchbase/test/test_integration_subdoc.cxx +337 -306
  867. data/ext/couchbase/test/test_integration_tracer.cxx +306 -0
  868. data/ext/couchbase/test/test_integration_transcoders.cxx +588 -0
  869. data/ext/couchbase/test/test_transaction_transaction_context.cxx +550 -0
  870. data/ext/couchbase/test/test_transaction_transaction_public_async_api.cxx +393 -0
  871. data/ext/couchbase/test/test_transaction_transaction_public_blocking_api.cxx +653 -0
  872. data/ext/couchbase/test/test_transaction_transaction_simple.cxx +899 -0
  873. data/ext/couchbase/test/test_transaction_transaction_simple_async.cxx +972 -0
  874. data/ext/couchbase/test/test_unit_config_profiles.cxx +132 -0
  875. data/ext/couchbase/test/test_unit_connection_string.cxx +170 -165
  876. data/ext/couchbase/test/test_unit_json_streaming_lexer.cxx +129 -9
  877. data/ext/couchbase/test/test_unit_json_transcoder.cxx +212 -0
  878. data/ext/couchbase/test/test_unit_jsonsl.cxx +1 -1
  879. data/ext/couchbase/test/test_unit_options.cxx +57 -0
  880. data/ext/couchbase/test/test_unit_transaction_logging.cxx +130 -0
  881. data/ext/couchbase/test/test_unit_transaction_utils.cxx +261 -0
  882. data/ext/couchbase/test/test_unit_utils.cxx +166 -29
  883. data/ext/couchbase/test/test_unit_waitable_op_list.cxx +132 -0
  884. data/ext/couchbase/third_party/asio/asio/include/asio/any_io_executor.hpp +4 -2
  885. data/ext/couchbase/third_party/asio/asio/include/asio/append.hpp +78 -0
  886. data/ext/couchbase/third_party/asio/asio/include/asio/as_tuple.hpp +139 -0
  887. data/ext/couchbase/third_party/asio/asio/include/asio/associated_allocator.hpp +4 -4
  888. data/ext/couchbase/third_party/asio/asio/include/asio/associated_cancellation_slot.hpp +4 -3
  889. data/ext/couchbase/third_party/asio/asio/include/asio/associated_executor.hpp +4 -4
  890. data/ext/couchbase/third_party/asio/asio/include/asio/associator.hpp +1 -1
  891. data/ext/couchbase/third_party/asio/asio/include/asio/async_result.hpp +357 -1
  892. data/ext/couchbase/third_party/asio/asio/include/asio/awaitable.hpp +10 -1
  893. data/ext/couchbase/third_party/asio/asio/include/asio/basic_datagram_socket.hpp +208 -115
  894. data/ext/couchbase/third_party/asio/asio/include/asio/basic_deadline_timer.hpp +28 -16
  895. data/ext/couchbase/third_party/asio/asio/include/asio/basic_file.hpp +2 -2
  896. data/ext/couchbase/third_party/asio/asio/include/asio/basic_io_object.hpp +1 -1
  897. data/ext/couchbase/third_party/asio/asio/include/asio/basic_random_access_file.hpp +51 -27
  898. data/ext/couchbase/third_party/asio/asio/include/asio/basic_raw_socket.hpp +210 -117
  899. data/ext/couchbase/third_party/asio/asio/include/asio/basic_readable_pipe.hpp +127 -15
  900. data/ext/couchbase/third_party/asio/asio/include/asio/basic_seq_packet_socket.hpp +84 -47
  901. data/ext/couchbase/third_party/asio/asio/include/asio/basic_serial_port.hpp +120 -27
  902. data/ext/couchbase/third_party/asio/asio/include/asio/basic_signal_set.hpp +36 -14
  903. data/ext/couchbase/third_party/asio/asio/include/asio/basic_socket.hpp +50 -26
  904. data/ext/couchbase/third_party/asio/asio/include/asio/basic_socket_acceptor.hpp +295 -150
  905. data/ext/couchbase/third_party/asio/asio/include/asio/basic_socket_iostream.hpp +1 -1
  906. data/ext/couchbase/third_party/asio/asio/include/asio/basic_socket_streambuf.hpp +1 -1
  907. data/ext/couchbase/third_party/asio/asio/include/asio/basic_stream_file.hpp +51 -27
  908. data/ext/couchbase/third_party/asio/asio/include/asio/basic_stream_socket.hpp +153 -84
  909. data/ext/couchbase/third_party/asio/asio/include/asio/basic_streambuf.hpp +1 -1
  910. data/ext/couchbase/third_party/asio/asio/include/asio/basic_streambuf_fwd.hpp +1 -1
  911. data/ext/couchbase/third_party/asio/asio/include/asio/basic_waitable_timer.hpp +28 -16
  912. data/ext/couchbase/third_party/asio/asio/include/asio/basic_writable_pipe.hpp +127 -15
  913. data/ext/couchbase/third_party/asio/asio/include/asio/bind_allocator.hpp +722 -0
  914. data/ext/couchbase/third_party/asio/asio/include/asio/bind_cancellation_slot.hpp +11 -8
  915. data/ext/couchbase/third_party/asio/asio/include/asio/bind_executor.hpp +36 -20
  916. data/ext/couchbase/third_party/asio/asio/include/asio/buffer.hpp +222 -42
  917. data/ext/couchbase/third_party/asio/asio/include/asio/buffer_registration.hpp +2 -1
  918. data/ext/couchbase/third_party/asio/asio/include/asio/buffered_read_stream.hpp +38 -6
  919. data/ext/couchbase/third_party/asio/asio/include/asio/buffered_read_stream_fwd.hpp +1 -1
  920. data/ext/couchbase/third_party/asio/asio/include/asio/buffered_stream.hpp +34 -5
  921. data/ext/couchbase/third_party/asio/asio/include/asio/buffered_stream_fwd.hpp +1 -1
  922. data/ext/couchbase/third_party/asio/asio/include/asio/buffered_write_stream.hpp +38 -6
  923. data/ext/couchbase/third_party/asio/asio/include/asio/buffered_write_stream_fwd.hpp +1 -1
  924. data/ext/couchbase/third_party/asio/asio/include/asio/buffers_iterator.hpp +1 -1
  925. data/ext/couchbase/third_party/asio/asio/include/asio/cancellation_signal.hpp +1 -1
  926. data/ext/couchbase/third_party/asio/asio/include/asio/cancellation_state.hpp +1 -1
  927. data/ext/couchbase/third_party/asio/asio/include/asio/cancellation_type.hpp +1 -1
  928. data/ext/couchbase/third_party/asio/asio/include/asio/co_spawn.hpp +33 -9
  929. data/ext/couchbase/third_party/asio/asio/include/asio/completion_condition.hpp +1 -1
  930. data/ext/couchbase/third_party/asio/asio/include/asio/compose.hpp +682 -12
  931. data/ext/couchbase/third_party/asio/asio/include/asio/connect.hpp +132 -61
  932. data/ext/couchbase/third_party/asio/asio/include/asio/connect_pipe.hpp +1 -1
  933. data/ext/couchbase/third_party/asio/asio/include/asio/coroutine.hpp +1 -1
  934. data/ext/couchbase/third_party/asio/asio/include/asio/deadline_timer.hpp +1 -1
  935. data/ext/couchbase/third_party/asio/asio/include/asio/defer.hpp +128 -42
  936. data/ext/couchbase/third_party/asio/asio/include/asio/deferred.hpp +675 -0
  937. data/ext/couchbase/third_party/asio/asio/include/asio/detached.hpp +6 -5
  938. data/ext/couchbase/third_party/asio/asio/include/asio/detail/array.hpp +1 -1
  939. data/ext/couchbase/third_party/asio/asio/include/asio/detail/array_fwd.hpp +1 -1
  940. data/ext/couchbase/third_party/asio/asio/include/asio/detail/assert.hpp +1 -1
  941. data/ext/couchbase/third_party/asio/asio/include/asio/detail/atomic_count.hpp +1 -1
  942. data/ext/couchbase/third_party/asio/asio/include/asio/detail/base_from_cancellation_state.hpp +1 -1
  943. data/ext/couchbase/third_party/asio/asio/include/asio/detail/base_from_completion_cond.hpp +1 -1
  944. data/ext/couchbase/third_party/asio/asio/include/asio/detail/bind_handler.hpp +1 -1
  945. data/ext/couchbase/third_party/asio/asio/include/asio/detail/blocking_executor_op.hpp +1 -1
  946. data/ext/couchbase/third_party/asio/asio/include/asio/detail/buffer_resize_guard.hpp +1 -1
  947. data/ext/couchbase/third_party/asio/asio/include/asio/detail/buffer_sequence_adapter.hpp +1 -1
  948. data/ext/couchbase/third_party/asio/asio/include/asio/detail/buffered_stream_storage.hpp +1 -1
  949. data/ext/couchbase/third_party/asio/asio/include/asio/detail/bulk_executor_op.hpp +1 -1
  950. data/ext/couchbase/third_party/asio/asio/include/asio/detail/call_stack.hpp +1 -1
  951. data/ext/couchbase/third_party/asio/asio/include/asio/detail/chrono.hpp +1 -1
  952. data/ext/couchbase/third_party/asio/asio/include/asio/detail/chrono_time_traits.hpp +1 -1
  953. data/ext/couchbase/third_party/asio/asio/include/asio/detail/completion_handler.hpp +1 -1
  954. data/ext/couchbase/third_party/asio/asio/include/asio/detail/concurrency_hint.hpp +1 -1
  955. data/ext/couchbase/third_party/asio/asio/include/asio/detail/conditionally_enabled_event.hpp +1 -1
  956. data/ext/couchbase/third_party/asio/asio/include/asio/detail/conditionally_enabled_mutex.hpp +1 -1
  957. data/ext/couchbase/third_party/asio/asio/include/asio/detail/config.hpp +201 -11
  958. data/ext/couchbase/third_party/asio/asio/include/asio/detail/consuming_buffers.hpp +1 -1
  959. data/ext/couchbase/third_party/asio/asio/include/asio/detail/cstddef.hpp +1 -1
  960. data/ext/couchbase/third_party/asio/asio/include/asio/detail/cstdint.hpp +1 -1
  961. data/ext/couchbase/third_party/asio/asio/include/asio/detail/date_time_fwd.hpp +1 -1
  962. data/ext/couchbase/third_party/asio/asio/include/asio/detail/deadline_timer_service.hpp +1 -1
  963. data/ext/couchbase/third_party/asio/asio/include/asio/detail/dependent_type.hpp +1 -1
  964. data/ext/couchbase/third_party/asio/asio/include/asio/detail/descriptor_ops.hpp +2 -2
  965. data/ext/couchbase/third_party/asio/asio/include/asio/detail/descriptor_read_op.hpp +3 -1
  966. data/ext/couchbase/third_party/asio/asio/include/asio/detail/descriptor_write_op.hpp +3 -1
  967. data/ext/couchbase/third_party/asio/asio/include/asio/detail/dev_poll_reactor.hpp +1 -1
  968. data/ext/couchbase/third_party/asio/asio/include/asio/detail/epoll_reactor.hpp +1 -1
  969. data/ext/couchbase/third_party/asio/asio/include/asio/detail/event.hpp +1 -1
  970. data/ext/couchbase/third_party/asio/asio/include/asio/detail/eventfd_select_interrupter.hpp +1 -1
  971. data/ext/couchbase/third_party/asio/asio/include/asio/detail/exception.hpp +40 -0
  972. data/ext/couchbase/third_party/asio/asio/include/asio/detail/executor_function.hpp +1 -1
  973. data/ext/couchbase/third_party/asio/asio/include/asio/detail/executor_op.hpp +1 -1
  974. data/ext/couchbase/third_party/asio/asio/include/asio/detail/fd_set_adapter.hpp +1 -1
  975. data/ext/couchbase/third_party/asio/asio/include/asio/detail/fenced_block.hpp +1 -1
  976. data/ext/couchbase/third_party/asio/asio/include/asio/detail/functional.hpp +1 -1
  977. data/ext/couchbase/third_party/asio/asio/include/asio/detail/future.hpp +1 -1
  978. data/ext/couchbase/third_party/asio/asio/include/asio/detail/gcc_arm_fenced_block.hpp +1 -1
  979. data/ext/couchbase/third_party/asio/asio/include/asio/detail/gcc_hppa_fenced_block.hpp +1 -1
  980. data/ext/couchbase/third_party/asio/asio/include/asio/detail/gcc_sync_fenced_block.hpp +1 -1
  981. data/ext/couchbase/third_party/asio/asio/include/asio/detail/gcc_x86_fenced_block.hpp +2 -2
  982. data/ext/couchbase/third_party/asio/asio/include/asio/detail/global.hpp +1 -1
  983. data/ext/couchbase/third_party/asio/asio/include/asio/detail/handler_alloc_helpers.hpp +1 -1
  984. data/ext/couchbase/third_party/asio/asio/include/asio/detail/handler_cont_helpers.hpp +1 -1
  985. data/ext/couchbase/third_party/asio/asio/include/asio/detail/handler_invoke_helpers.hpp +1 -1
  986. data/ext/couchbase/third_party/asio/asio/include/asio/detail/handler_tracking.hpp +1 -1
  987. data/ext/couchbase/third_party/asio/asio/include/asio/detail/handler_type_requirements.hpp +1 -1
  988. data/ext/couchbase/third_party/asio/asio/include/asio/detail/handler_work.hpp +1 -1
  989. data/ext/couchbase/third_party/asio/asio/include/asio/detail/hash_map.hpp +1 -1
  990. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/buffer_sequence_adapter.ipp +1 -1
  991. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/descriptor_ops.ipp +9 -9
  992. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/dev_poll_reactor.hpp +1 -1
  993. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/dev_poll_reactor.ipp +1 -1
  994. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/epoll_reactor.hpp +1 -1
  995. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/epoll_reactor.ipp +1 -1
  996. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/eventfd_select_interrupter.ipp +1 -1
  997. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/handler_tracking.ipp +1 -1
  998. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/io_uring_descriptor_service.ipp +4 -1
  999. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/io_uring_file_service.ipp +10 -1
  1000. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/io_uring_service.hpp +1 -1
  1001. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/io_uring_service.ipp +8 -7
  1002. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/io_uring_socket_service_base.ipp +1 -1
  1003. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/kqueue_reactor.hpp +1 -1
  1004. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/kqueue_reactor.ipp +1 -1
  1005. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/null_event.ipp +1 -1
  1006. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/pipe_select_interrupter.ipp +1 -1
  1007. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/posix_event.ipp +1 -1
  1008. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/posix_mutex.ipp +1 -1
  1009. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/posix_serial_port_service.ipp +21 -2
  1010. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/posix_thread.ipp +1 -1
  1011. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/posix_tss_ptr.ipp +1 -1
  1012. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/reactive_descriptor_service.ipp +6 -1
  1013. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/reactive_socket_service_base.ipp +3 -3
  1014. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/resolver_service_base.ipp +1 -1
  1015. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/scheduler.ipp +1 -1
  1016. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/select_reactor.hpp +1 -1
  1017. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/select_reactor.ipp +36 -1
  1018. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/service_registry.hpp +1 -1
  1019. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/service_registry.ipp +1 -1
  1020. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/signal_set_service.ipp +28 -1
  1021. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/socket_ops.ipp +126 -121
  1022. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/socket_select_interrupter.ipp +4 -4
  1023. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/strand_executor_service.hpp +1 -1
  1024. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/strand_executor_service.ipp +1 -1
  1025. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/strand_service.hpp +1 -1
  1026. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/strand_service.ipp +1 -1
  1027. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/thread_context.ipp +1 -1
  1028. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/throw_error.ipp +13 -9
  1029. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/timer_queue_ptime.ipp +1 -1
  1030. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/timer_queue_set.ipp +1 -1
  1031. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/win_event.ipp +1 -1
  1032. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/win_iocp_file_service.ipp +21 -7
  1033. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/win_iocp_handle_service.ipp +94 -1
  1034. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/win_iocp_io_context.hpp +1 -1
  1035. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/win_iocp_io_context.ipp +1 -1
  1036. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/win_iocp_serial_port_service.ipp +9 -1
  1037. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/win_iocp_socket_service_base.ipp +11 -11
  1038. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/win_mutex.ipp +1 -1
  1039. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/win_object_handle_service.ipp +5 -1
  1040. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/win_static_mutex.ipp +1 -1
  1041. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/win_thread.ipp +1 -1
  1042. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/win_tss_ptr.ipp +1 -1
  1043. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/winrt_ssocket_service_base.ipp +4 -4
  1044. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/winrt_timer_scheduler.hpp +1 -1
  1045. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/winrt_timer_scheduler.ipp +1 -1
  1046. data/ext/couchbase/third_party/asio/asio/include/asio/detail/impl/winsock_init.ipp +1 -1
  1047. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_control.hpp +1 -1
  1048. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_object_impl.hpp +11 -2
  1049. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_descriptor_read_at_op.hpp +3 -1
  1050. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_descriptor_read_op.hpp +3 -1
  1051. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_descriptor_service.hpp +26 -8
  1052. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_descriptor_write_at_op.hpp +3 -1
  1053. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_descriptor_write_op.hpp +3 -1
  1054. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_file_service.hpp +12 -1
  1055. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_null_buffers_op.hpp +3 -1
  1056. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_operation.hpp +1 -1
  1057. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_service.hpp +2 -2
  1058. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_socket_accept_op.hpp +5 -1
  1059. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_socket_connect_op.hpp +3 -1
  1060. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_socket_recv_op.hpp +3 -1
  1061. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_socket_recvfrom_op.hpp +4 -2
  1062. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_socket_recvmsg_op.hpp +3 -1
  1063. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_socket_send_op.hpp +3 -1
  1064. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_socket_sendto_op.hpp +3 -1
  1065. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_socket_service.hpp +31 -13
  1066. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_socket_service_base.hpp +1 -1
  1067. data/ext/couchbase/third_party/asio/asio/include/asio/detail/io_uring_wait_op.hpp +3 -1
  1068. data/ext/couchbase/third_party/asio/asio/include/asio/detail/is_buffer_sequence.hpp +1 -1
  1069. data/ext/couchbase/third_party/asio/asio/include/asio/detail/is_executor.hpp +1 -1
  1070. data/ext/couchbase/third_party/asio/asio/include/asio/detail/keyword_tss_ptr.hpp +1 -1
  1071. data/ext/couchbase/third_party/asio/asio/include/asio/detail/kqueue_reactor.hpp +1 -1
  1072. data/ext/couchbase/third_party/asio/asio/include/asio/detail/local_free_on_block_exit.hpp +1 -1
  1073. data/ext/couchbase/third_party/asio/asio/include/asio/detail/macos_fenced_block.hpp +1 -1
  1074. data/ext/couchbase/third_party/asio/asio/include/asio/detail/memory.hpp +17 -1
  1075. data/ext/couchbase/third_party/asio/asio/include/asio/detail/mutex.hpp +1 -1
  1076. data/ext/couchbase/third_party/asio/asio/include/asio/detail/non_const_lvalue.hpp +1 -1
  1077. data/ext/couchbase/third_party/asio/asio/include/asio/detail/noncopyable.hpp +1 -1
  1078. data/ext/couchbase/third_party/asio/asio/include/asio/detail/null_event.hpp +1 -1
  1079. data/ext/couchbase/third_party/asio/asio/include/asio/detail/null_fenced_block.hpp +1 -1
  1080. data/ext/couchbase/third_party/asio/asio/include/asio/detail/null_global.hpp +1 -1
  1081. data/ext/couchbase/third_party/asio/asio/include/asio/detail/null_mutex.hpp +1 -1
  1082. data/ext/couchbase/third_party/asio/asio/include/asio/detail/null_reactor.hpp +1 -1
  1083. data/ext/couchbase/third_party/asio/asio/include/asio/detail/null_signal_blocker.hpp +1 -1
  1084. data/ext/couchbase/third_party/asio/asio/include/asio/detail/null_socket_service.hpp +1 -1
  1085. data/ext/couchbase/third_party/asio/asio/include/asio/detail/null_static_mutex.hpp +1 -1
  1086. data/ext/couchbase/third_party/asio/asio/include/asio/detail/null_thread.hpp +1 -1
  1087. data/ext/couchbase/third_party/asio/asio/include/asio/detail/null_tss_ptr.hpp +1 -1
  1088. data/ext/couchbase/third_party/asio/asio/include/asio/detail/object_pool.hpp +1 -1
  1089. data/ext/couchbase/third_party/asio/asio/include/asio/detail/old_win_sdk_compat.hpp +1 -1
  1090. data/ext/couchbase/third_party/asio/asio/include/asio/detail/op_queue.hpp +1 -1
  1091. data/ext/couchbase/third_party/asio/asio/include/asio/detail/operation.hpp +1 -1
  1092. data/ext/couchbase/third_party/asio/asio/include/asio/detail/pipe_select_interrupter.hpp +1 -1
  1093. data/ext/couchbase/third_party/asio/asio/include/asio/detail/pop_options.hpp +5 -1
  1094. data/ext/couchbase/third_party/asio/asio/include/asio/detail/posix_event.hpp +1 -1
  1095. data/ext/couchbase/third_party/asio/asio/include/asio/detail/posix_fd_set_adapter.hpp +1 -1
  1096. data/ext/couchbase/third_party/asio/asio/include/asio/detail/posix_global.hpp +1 -1
  1097. data/ext/couchbase/third_party/asio/asio/include/asio/detail/posix_mutex.hpp +1 -1
  1098. data/ext/couchbase/third_party/asio/asio/include/asio/detail/posix_serial_port_service.hpp +2 -1
  1099. data/ext/couchbase/third_party/asio/asio/include/asio/detail/posix_signal_blocker.hpp +1 -1
  1100. data/ext/couchbase/third_party/asio/asio/include/asio/detail/posix_static_mutex.hpp +1 -1
  1101. data/ext/couchbase/third_party/asio/asio/include/asio/detail/posix_thread.hpp +1 -1
  1102. data/ext/couchbase/third_party/asio/asio/include/asio/detail/posix_tss_ptr.hpp +1 -1
  1103. data/ext/couchbase/third_party/asio/asio/include/asio/detail/push_options.hpp +11 -2
  1104. data/ext/couchbase/third_party/asio/asio/include/asio/detail/reactive_descriptor_service.hpp +26 -7
  1105. data/ext/couchbase/third_party/asio/asio/include/asio/detail/reactive_null_buffers_op.hpp +1 -1
  1106. data/ext/couchbase/third_party/asio/asio/include/asio/detail/reactive_socket_accept_op.hpp +5 -1
  1107. data/ext/couchbase/third_party/asio/asio/include/asio/detail/reactive_socket_connect_op.hpp +3 -1
  1108. data/ext/couchbase/third_party/asio/asio/include/asio/detail/reactive_socket_recv_op.hpp +3 -1
  1109. data/ext/couchbase/third_party/asio/asio/include/asio/detail/reactive_socket_recvfrom_op.hpp +3 -1
  1110. data/ext/couchbase/third_party/asio/asio/include/asio/detail/reactive_socket_recvmsg_op.hpp +3 -1
  1111. data/ext/couchbase/third_party/asio/asio/include/asio/detail/reactive_socket_send_op.hpp +3 -1
  1112. data/ext/couchbase/third_party/asio/asio/include/asio/detail/reactive_socket_sendto_op.hpp +3 -1
  1113. data/ext/couchbase/third_party/asio/asio/include/asio/detail/reactive_socket_service.hpp +38 -12
  1114. data/ext/couchbase/third_party/asio/asio/include/asio/detail/reactive_socket_service_base.hpp +2 -3
  1115. data/ext/couchbase/third_party/asio/asio/include/asio/detail/reactive_wait_op.hpp +1 -1
  1116. data/ext/couchbase/third_party/asio/asio/include/asio/detail/reactor.hpp +1 -1
  1117. data/ext/couchbase/third_party/asio/asio/include/asio/detail/reactor_op.hpp +1 -1
  1118. data/ext/couchbase/third_party/asio/asio/include/asio/detail/reactor_op_queue.hpp +1 -1
  1119. data/ext/couchbase/third_party/asio/asio/include/asio/detail/recycling_allocator.hpp +1 -1
  1120. data/ext/couchbase/third_party/asio/asio/include/asio/detail/regex_fwd.hpp +1 -1
  1121. data/ext/couchbase/third_party/asio/asio/include/asio/detail/resolve_endpoint_op.hpp +1 -1
  1122. data/ext/couchbase/third_party/asio/asio/include/asio/detail/resolve_op.hpp +1 -1
  1123. data/ext/couchbase/third_party/asio/asio/include/asio/detail/resolve_query_op.hpp +1 -1
  1124. data/ext/couchbase/third_party/asio/asio/include/asio/detail/resolver_service.hpp +3 -1
  1125. data/ext/couchbase/third_party/asio/asio/include/asio/detail/resolver_service_base.hpp +1 -1
  1126. data/ext/couchbase/third_party/asio/asio/include/asio/detail/scheduler.hpp +1 -1
  1127. data/ext/couchbase/third_party/asio/asio/include/asio/detail/scheduler_operation.hpp +1 -1
  1128. data/ext/couchbase/third_party/asio/asio/include/asio/detail/scheduler_task.hpp +1 -1
  1129. data/ext/couchbase/third_party/asio/asio/include/asio/detail/scheduler_thread_info.hpp +1 -1
  1130. data/ext/couchbase/third_party/asio/asio/include/asio/detail/scoped_lock.hpp +1 -1
  1131. data/ext/couchbase/third_party/asio/asio/include/asio/detail/scoped_ptr.hpp +1 -1
  1132. data/ext/couchbase/third_party/asio/asio/include/asio/detail/select_interrupter.hpp +1 -1
  1133. data/ext/couchbase/third_party/asio/asio/include/asio/detail/select_reactor.hpp +23 -1
  1134. data/ext/couchbase/third_party/asio/asio/include/asio/detail/service_registry.hpp +1 -1
  1135. data/ext/couchbase/third_party/asio/asio/include/asio/detail/signal_blocker.hpp +1 -1
  1136. data/ext/couchbase/third_party/asio/asio/include/asio/detail/signal_handler.hpp +1 -1
  1137. data/ext/couchbase/third_party/asio/asio/include/asio/detail/signal_init.hpp +1 -1
  1138. data/ext/couchbase/third_party/asio/asio/include/asio/detail/signal_op.hpp +5 -1
  1139. data/ext/couchbase/third_party/asio/asio/include/asio/detail/signal_set_service.hpp +43 -1
  1140. data/ext/couchbase/third_party/asio/asio/include/asio/detail/socket_holder.hpp +1 -1
  1141. data/ext/couchbase/third_party/asio/asio/include/asio/detail/socket_ops.hpp +37 -45
  1142. data/ext/couchbase/third_party/asio/asio/include/asio/detail/socket_option.hpp +1 -1
  1143. data/ext/couchbase/third_party/asio/asio/include/asio/detail/socket_select_interrupter.hpp +1 -1
  1144. data/ext/couchbase/third_party/asio/asio/include/asio/detail/socket_types.hpp +1 -1
  1145. data/ext/couchbase/third_party/asio/asio/include/asio/detail/solaris_fenced_block.hpp +1 -1
  1146. data/ext/couchbase/third_party/asio/asio/include/asio/detail/source_location.hpp +1 -1
  1147. data/ext/couchbase/third_party/asio/asio/include/asio/detail/static_mutex.hpp +1 -1
  1148. data/ext/couchbase/third_party/asio/asio/include/asio/detail/std_event.hpp +1 -1
  1149. data/ext/couchbase/third_party/asio/asio/include/asio/detail/std_fenced_block.hpp +1 -1
  1150. data/ext/couchbase/third_party/asio/asio/include/asio/detail/std_global.hpp +1 -1
  1151. data/ext/couchbase/third_party/asio/asio/include/asio/detail/std_mutex.hpp +1 -1
  1152. data/ext/couchbase/third_party/asio/asio/include/asio/detail/std_static_mutex.hpp +1 -1
  1153. data/ext/couchbase/third_party/asio/asio/include/asio/detail/std_thread.hpp +1 -1
  1154. data/ext/couchbase/third_party/asio/asio/include/asio/detail/strand_executor_service.hpp +1 -1
  1155. data/ext/couchbase/third_party/asio/asio/include/asio/detail/strand_service.hpp +1 -1
  1156. data/ext/couchbase/third_party/asio/asio/include/asio/detail/string_view.hpp +1 -1
  1157. data/ext/couchbase/third_party/asio/asio/include/asio/detail/thread.hpp +1 -1
  1158. data/ext/couchbase/third_party/asio/asio/include/asio/detail/thread_context.hpp +1 -1
  1159. data/ext/couchbase/third_party/asio/asio/include/asio/detail/thread_group.hpp +1 -1
  1160. data/ext/couchbase/third_party/asio/asio/include/asio/detail/thread_info_base.hpp +1 -1
  1161. data/ext/couchbase/third_party/asio/asio/include/asio/detail/throw_error.hpp +18 -9
  1162. data/ext/couchbase/third_party/asio/asio/include/asio/detail/throw_exception.hpp +7 -3
  1163. data/ext/couchbase/third_party/asio/asio/include/asio/detail/timer_queue.hpp +1 -1
  1164. data/ext/couchbase/third_party/asio/asio/include/asio/detail/timer_queue_base.hpp +1 -1
  1165. data/ext/couchbase/third_party/asio/asio/include/asio/detail/timer_queue_ptime.hpp +1 -1
  1166. data/ext/couchbase/third_party/asio/asio/include/asio/detail/timer_queue_set.hpp +1 -1
  1167. data/ext/couchbase/third_party/asio/asio/include/asio/detail/timer_scheduler.hpp +1 -1
  1168. data/ext/couchbase/third_party/asio/asio/include/asio/detail/timer_scheduler_fwd.hpp +1 -1
  1169. data/ext/couchbase/third_party/asio/asio/include/asio/detail/tss_ptr.hpp +1 -1
  1170. data/ext/couchbase/third_party/asio/asio/include/asio/detail/type_traits.hpp +9 -1
  1171. data/ext/couchbase/third_party/asio/asio/include/asio/detail/utility.hpp +84 -0
  1172. data/ext/couchbase/third_party/asio/asio/include/asio/detail/variadic_templates.hpp +1 -1
  1173. data/ext/couchbase/third_party/asio/asio/include/asio/detail/wait_handler.hpp +1 -1
  1174. data/ext/couchbase/third_party/asio/asio/include/asio/detail/wait_op.hpp +1 -1
  1175. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_event.hpp +1 -1
  1176. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_fd_set_adapter.hpp +1 -1
  1177. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_fenced_block.hpp +1 -1
  1178. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_global.hpp +1 -1
  1179. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_file_service.hpp +8 -1
  1180. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_handle_read_op.hpp +3 -1
  1181. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_handle_service.hpp +29 -1
  1182. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_handle_write_op.hpp +6 -2
  1183. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_io_context.hpp +1 -1
  1184. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_null_buffers_op.hpp +3 -1
  1185. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_operation.hpp +1 -1
  1186. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_overlapped_op.hpp +6 -2
  1187. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_overlapped_ptr.hpp +1 -1
  1188. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_serial_port_service.hpp +2 -1
  1189. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_socket_accept_op.hpp +5 -1
  1190. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_socket_connect_op.hpp +3 -1
  1191. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_socket_recv_op.hpp +3 -1
  1192. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_socket_recvfrom_op.hpp +3 -1
  1193. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_socket_recvmsg_op.hpp +3 -1
  1194. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_socket_send_op.hpp +3 -1
  1195. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_socket_service.hpp +32 -8
  1196. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_socket_service_base.hpp +6 -8
  1197. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_thread_info.hpp +1 -1
  1198. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_iocp_wait_op.hpp +3 -1
  1199. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_mutex.hpp +1 -1
  1200. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_object_handle_service.hpp +1 -1
  1201. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_static_mutex.hpp +1 -1
  1202. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_thread.hpp +1 -1
  1203. data/ext/couchbase/third_party/asio/asio/include/asio/detail/win_tss_ptr.hpp +1 -1
  1204. data/ext/couchbase/third_party/asio/asio/include/asio/detail/winapp_thread.hpp +1 -1
  1205. data/ext/couchbase/third_party/asio/asio/include/asio/detail/wince_thread.hpp +1 -1
  1206. data/ext/couchbase/third_party/asio/asio/include/asio/detail/winrt_async_manager.hpp +1 -1
  1207. data/ext/couchbase/third_party/asio/asio/include/asio/detail/winrt_async_op.hpp +1 -1
  1208. data/ext/couchbase/third_party/asio/asio/include/asio/detail/winrt_resolve_op.hpp +1 -1
  1209. data/ext/couchbase/third_party/asio/asio/include/asio/detail/winrt_resolver_service.hpp +1 -1
  1210. data/ext/couchbase/third_party/asio/asio/include/asio/detail/winrt_socket_connect_op.hpp +1 -1
  1211. data/ext/couchbase/third_party/asio/asio/include/asio/detail/winrt_socket_recv_op.hpp +1 -1
  1212. data/ext/couchbase/third_party/asio/asio/include/asio/detail/winrt_socket_send_op.hpp +1 -1
  1213. data/ext/couchbase/third_party/asio/asio/include/asio/detail/winrt_ssocket_service.hpp +1 -1
  1214. data/ext/couchbase/third_party/asio/asio/include/asio/detail/winrt_ssocket_service_base.hpp +1 -1
  1215. data/ext/couchbase/third_party/asio/asio/include/asio/detail/winrt_timer_scheduler.hpp +1 -1
  1216. data/ext/couchbase/third_party/asio/asio/include/asio/detail/winrt_utils.hpp +1 -1
  1217. data/ext/couchbase/third_party/asio/asio/include/asio/detail/winsock_init.hpp +1 -1
  1218. data/ext/couchbase/third_party/asio/asio/include/asio/detail/work_dispatcher.hpp +4 -2
  1219. data/ext/couchbase/third_party/asio/asio/include/asio/detail/wrapped_handler.hpp +1 -1
  1220. data/ext/couchbase/third_party/asio/asio/include/asio/dispatch.hpp +126 -42
  1221. data/ext/couchbase/third_party/asio/asio/include/asio/error.hpp +36 -1
  1222. data/ext/couchbase/third_party/asio/asio/include/asio/error_code.hpp +1 -1
  1223. data/ext/couchbase/third_party/asio/asio/include/asio/execution/allocator.hpp +1 -1
  1224. data/ext/couchbase/third_party/asio/asio/include/asio/execution/any_executor.hpp +1 -1
  1225. data/ext/couchbase/third_party/asio/asio/include/asio/execution/bad_executor.hpp +1 -1
  1226. data/ext/couchbase/third_party/asio/asio/include/asio/execution/blocking.hpp +1 -1
  1227. data/ext/couchbase/third_party/asio/asio/include/asio/execution/blocking_adaptation.hpp +1 -1
  1228. data/ext/couchbase/third_party/asio/asio/include/asio/execution/bulk_execute.hpp +1 -1
  1229. data/ext/couchbase/third_party/asio/asio/include/asio/execution/bulk_guarantee.hpp +1 -1
  1230. data/ext/couchbase/third_party/asio/asio/include/asio/execution/connect.hpp +1 -1
  1231. data/ext/couchbase/third_party/asio/asio/include/asio/execution/context.hpp +1 -1
  1232. data/ext/couchbase/third_party/asio/asio/include/asio/execution/context_as.hpp +1 -1
  1233. data/ext/couchbase/third_party/asio/asio/include/asio/execution/detail/as_invocable.hpp +1 -1
  1234. data/ext/couchbase/third_party/asio/asio/include/asio/execution/detail/as_operation.hpp +1 -1
  1235. data/ext/couchbase/third_party/asio/asio/include/asio/execution/detail/as_receiver.hpp +1 -1
  1236. data/ext/couchbase/third_party/asio/asio/include/asio/execution/detail/bulk_sender.hpp +1 -1
  1237. data/ext/couchbase/third_party/asio/asio/include/asio/execution/detail/submit_receiver.hpp +1 -1
  1238. data/ext/couchbase/third_party/asio/asio/include/asio/execution/detail/void_receiver.hpp +1 -1
  1239. data/ext/couchbase/third_party/asio/asio/include/asio/execution/execute.hpp +1 -1
  1240. data/ext/couchbase/third_party/asio/asio/include/asio/execution/executor.hpp +1 -1
  1241. data/ext/couchbase/third_party/asio/asio/include/asio/execution/impl/bad_executor.ipp +1 -1
  1242. data/ext/couchbase/third_party/asio/asio/include/asio/execution/impl/receiver_invocation_error.ipp +1 -1
  1243. data/ext/couchbase/third_party/asio/asio/include/asio/execution/invocable_archetype.hpp +1 -1
  1244. data/ext/couchbase/third_party/asio/asio/include/asio/execution/mapping.hpp +1 -1
  1245. data/ext/couchbase/third_party/asio/asio/include/asio/execution/occupancy.hpp +1 -1
  1246. data/ext/couchbase/third_party/asio/asio/include/asio/execution/operation_state.hpp +1 -1
  1247. data/ext/couchbase/third_party/asio/asio/include/asio/execution/outstanding_work.hpp +1 -1
  1248. data/ext/couchbase/third_party/asio/asio/include/asio/execution/prefer_only.hpp +1 -1
  1249. data/ext/couchbase/third_party/asio/asio/include/asio/execution/receiver.hpp +1 -1
  1250. data/ext/couchbase/third_party/asio/asio/include/asio/execution/receiver_invocation_error.hpp +1 -1
  1251. data/ext/couchbase/third_party/asio/asio/include/asio/execution/relationship.hpp +1 -1
  1252. data/ext/couchbase/third_party/asio/asio/include/asio/execution/schedule.hpp +1 -1
  1253. data/ext/couchbase/third_party/asio/asio/include/asio/execution/scheduler.hpp +1 -1
  1254. data/ext/couchbase/third_party/asio/asio/include/asio/execution/sender.hpp +1 -1
  1255. data/ext/couchbase/third_party/asio/asio/include/asio/execution/set_done.hpp +1 -1
  1256. data/ext/couchbase/third_party/asio/asio/include/asio/execution/set_error.hpp +1 -1
  1257. data/ext/couchbase/third_party/asio/asio/include/asio/execution/set_value.hpp +1 -1
  1258. data/ext/couchbase/third_party/asio/asio/include/asio/execution/start.hpp +1 -1
  1259. data/ext/couchbase/third_party/asio/asio/include/asio/execution/submit.hpp +1 -1
  1260. data/ext/couchbase/third_party/asio/asio/include/asio/execution.hpp +1 -1
  1261. data/ext/couchbase/third_party/asio/asio/include/asio/execution_context.hpp +1 -1
  1262. data/ext/couchbase/third_party/asio/asio/include/asio/executor.hpp +1 -1
  1263. data/ext/couchbase/third_party/asio/asio/include/asio/executor_work_guard.hpp +100 -32
  1264. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/append.hpp +6 -41
  1265. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/as_single.hpp +6 -5
  1266. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/as_tuple.hpp +6 -101
  1267. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/awaitable_operators.hpp +14 -14
  1268. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/basic_channel.hpp +78 -2
  1269. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/basic_concurrent_channel.hpp +69 -2
  1270. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/cancellation_condition.hpp +1 -1
  1271. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/channel.hpp +1 -1
  1272. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/channel_error.hpp +1 -1
  1273. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/channel_traits.hpp +1 -1
  1274. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/co_spawn.hpp +12 -16
  1275. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/concurrent_channel.hpp +1 -1
  1276. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/coro.hpp +4 -4
  1277. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/coro_traits.hpp +2 -2
  1278. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/deferred.hpp +6 -575
  1279. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/detail/channel_handler.hpp +1 -1
  1280. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/detail/channel_message.hpp +1 -1
  1281. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/detail/channel_operation.hpp +1 -1
  1282. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/detail/channel_payload.hpp +1 -1
  1283. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/detail/channel_receive_op.hpp +1 -1
  1284. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/detail/channel_send_functions.hpp +2 -1
  1285. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/detail/channel_send_op.hpp +1 -1
  1286. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/detail/channel_service.hpp +1 -1
  1287. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/detail/completion_handler_erasure.hpp +82 -46
  1288. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/detail/coro_promise_allocator.hpp +2 -2
  1289. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/detail/has_signature.hpp +1 -1
  1290. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/detail/impl/channel_service.hpp +6 -8
  1291. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/detail/partial_promise.hpp +2 -2
  1292. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/impl/as_single.hpp +1 -1
  1293. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/impl/channel_error.ipp +1 -1
  1294. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/impl/coro.hpp +47 -56
  1295. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/impl/parallel_group.hpp +14 -28
  1296. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/impl/promise.hpp +2 -2
  1297. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/impl/use_coro.hpp +3 -2
  1298. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/parallel_group.hpp +27 -37
  1299. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/prepend.hpp +6 -41
  1300. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/promise.hpp +23 -405
  1301. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/use_coro.hpp +5 -5
  1302. data/ext/couchbase/third_party/asio/asio/include/asio/file_base.hpp +9 -3
  1303. data/ext/couchbase/third_party/asio/asio/include/asio/generic/basic_endpoint.hpp +1 -1
  1304. data/ext/couchbase/third_party/asio/asio/include/asio/generic/datagram_protocol.hpp +1 -1
  1305. data/ext/couchbase/third_party/asio/asio/include/asio/generic/detail/endpoint.hpp +1 -1
  1306. data/ext/couchbase/third_party/asio/asio/include/asio/generic/detail/impl/endpoint.ipp +1 -1
  1307. data/ext/couchbase/third_party/asio/asio/include/asio/generic/raw_protocol.hpp +1 -1
  1308. data/ext/couchbase/third_party/asio/asio/include/asio/generic/seq_packet_protocol.hpp +1 -1
  1309. data/ext/couchbase/third_party/asio/asio/include/asio/generic/stream_protocol.hpp +1 -1
  1310. data/ext/couchbase/third_party/asio/asio/include/asio/handler_alloc_hook.hpp +1 -1
  1311. data/ext/couchbase/third_party/asio/asio/include/asio/handler_continuation_hook.hpp +1 -1
  1312. data/ext/couchbase/third_party/asio/asio/include/asio/handler_invoke_hook.hpp +1 -1
  1313. data/ext/couchbase/third_party/asio/asio/include/asio/high_resolution_timer.hpp +1 -1
  1314. data/ext/couchbase/third_party/asio/asio/include/asio/impl/any_io_executor.ipp +6 -1
  1315. data/ext/couchbase/third_party/asio/asio/include/asio/impl/append.hpp +216 -0
  1316. data/ext/couchbase/third_party/asio/asio/include/asio/impl/as_tuple.hpp +244 -0
  1317. data/ext/couchbase/third_party/asio/asio/include/asio/impl/awaitable.hpp +400 -5
  1318. data/ext/couchbase/third_party/asio/asio/include/asio/impl/buffered_read_stream.hpp +13 -3
  1319. data/ext/couchbase/third_party/asio/asio/include/asio/impl/buffered_write_stream.hpp +13 -3
  1320. data/ext/couchbase/third_party/asio/asio/include/asio/impl/cancellation_signal.ipp +1 -1
  1321. data/ext/couchbase/third_party/asio/asio/include/asio/impl/co_spawn.hpp +71 -7
  1322. data/ext/couchbase/third_party/asio/asio/include/asio/impl/connect.hpp +63 -31
  1323. data/ext/couchbase/third_party/asio/asio/include/asio/impl/connect_pipe.hpp +1 -1
  1324. data/ext/couchbase/third_party/asio/asio/include/asio/impl/connect_pipe.ipp +2 -2
  1325. data/ext/couchbase/third_party/asio/asio/include/asio/impl/defer.hpp +23 -13
  1326. data/ext/couchbase/third_party/asio/asio/include/asio/impl/deferred.hpp +95 -0
  1327. data/ext/couchbase/third_party/asio/asio/include/asio/impl/detached.hpp +1 -1
  1328. data/ext/couchbase/third_party/asio/asio/include/asio/impl/dispatch.hpp +23 -13
  1329. data/ext/couchbase/third_party/asio/asio/include/asio/impl/error.ipp +1 -1
  1330. data/ext/couchbase/third_party/asio/asio/include/asio/impl/error_code.ipp +1 -1
  1331. data/ext/couchbase/third_party/asio/asio/include/asio/impl/execution_context.hpp +1 -1
  1332. data/ext/couchbase/third_party/asio/asio/include/asio/impl/execution_context.ipp +1 -1
  1333. data/ext/couchbase/third_party/asio/asio/include/asio/impl/executor.hpp +1 -1
  1334. data/ext/couchbase/third_party/asio/asio/include/asio/impl/executor.ipp +1 -1
  1335. data/ext/couchbase/third_party/asio/asio/include/asio/impl/handler_alloc_hook.ipp +1 -1
  1336. data/ext/couchbase/third_party/asio/asio/include/asio/impl/io_context.hpp +9 -3
  1337. data/ext/couchbase/third_party/asio/asio/include/asio/impl/io_context.ipp +1 -1
  1338. data/ext/couchbase/third_party/asio/asio/include/asio/impl/multiple_exceptions.ipp +1 -1
  1339. data/ext/couchbase/third_party/asio/asio/include/asio/impl/post.hpp +23 -13
  1340. data/ext/couchbase/third_party/asio/asio/include/asio/impl/prepend.hpp +216 -0
  1341. data/ext/couchbase/third_party/asio/asio/include/asio/impl/read.hpp +97 -51
  1342. data/ext/couchbase/third_party/asio/asio/include/asio/impl/read_at.hpp +51 -31
  1343. data/ext/couchbase/third_party/asio/asio/include/asio/impl/read_until.hpp +119 -59
  1344. data/ext/couchbase/third_party/asio/asio/include/asio/impl/redirect_error.hpp +1 -1
  1345. data/ext/couchbase/third_party/asio/asio/include/asio/impl/serial_port_base.hpp +1 -1
  1346. data/ext/couchbase/third_party/asio/asio/include/asio/impl/serial_port_base.ipp +1 -1
  1347. data/ext/couchbase/third_party/asio/asio/include/asio/impl/spawn.hpp +1321 -277
  1348. data/ext/couchbase/third_party/asio/asio/include/asio/impl/src.hpp +1 -1
  1349. data/ext/couchbase/third_party/asio/asio/include/asio/impl/system_context.hpp +1 -1
  1350. data/ext/couchbase/third_party/asio/asio/include/asio/impl/system_context.ipp +1 -1
  1351. data/ext/couchbase/third_party/asio/asio/include/asio/impl/system_executor.hpp +1 -1
  1352. data/ext/couchbase/third_party/asio/asio/include/asio/impl/thread_pool.hpp +1 -1
  1353. data/ext/couchbase/third_party/asio/asio/include/asio/impl/thread_pool.ipp +1 -1
  1354. data/ext/couchbase/third_party/asio/asio/include/asio/impl/use_awaitable.hpp +18 -8
  1355. data/ext/couchbase/third_party/asio/asio/include/asio/impl/use_future.hpp +1 -1
  1356. data/ext/couchbase/third_party/asio/asio/include/asio/impl/write.hpp +95 -50
  1357. data/ext/couchbase/third_party/asio/asio/include/asio/impl/write_at.hpp +53 -31
  1358. data/ext/couchbase/third_party/asio/asio/include/asio/io_context.hpp +25 -38
  1359. data/ext/couchbase/third_party/asio/asio/include/asio/io_context_strand.hpp +15 -3
  1360. data/ext/couchbase/third_party/asio/asio/include/asio/io_service.hpp +1 -1
  1361. data/ext/couchbase/third_party/asio/asio/include/asio/io_service_strand.hpp +1 -1
  1362. data/ext/couchbase/third_party/asio/asio/include/asio/ip/address.hpp +1 -1
  1363. data/ext/couchbase/third_party/asio/asio/include/asio/ip/address_v4.hpp +75 -1
  1364. data/ext/couchbase/third_party/asio/asio/include/asio/ip/address_v4_iterator.hpp +1 -1
  1365. data/ext/couchbase/third_party/asio/asio/include/asio/ip/address_v4_range.hpp +1 -1
  1366. data/ext/couchbase/third_party/asio/asio/include/asio/ip/address_v6.hpp +35 -1
  1367. data/ext/couchbase/third_party/asio/asio/include/asio/ip/address_v6_iterator.hpp +1 -1
  1368. data/ext/couchbase/third_party/asio/asio/include/asio/ip/address_v6_range.hpp +1 -1
  1369. data/ext/couchbase/third_party/asio/asio/include/asio/ip/bad_address_cast.hpp +1 -1
  1370. data/ext/couchbase/third_party/asio/asio/include/asio/ip/basic_endpoint.hpp +1 -1
  1371. data/ext/couchbase/third_party/asio/asio/include/asio/ip/basic_resolver.hpp +130 -64
  1372. data/ext/couchbase/third_party/asio/asio/include/asio/ip/basic_resolver_entry.hpp +1 -1
  1373. data/ext/couchbase/third_party/asio/asio/include/asio/ip/basic_resolver_iterator.hpp +1 -1
  1374. data/ext/couchbase/third_party/asio/asio/include/asio/ip/basic_resolver_query.hpp +1 -1
  1375. data/ext/couchbase/third_party/asio/asio/include/asio/ip/basic_resolver_results.hpp +1 -1
  1376. data/ext/couchbase/third_party/asio/asio/include/asio/ip/detail/endpoint.hpp +1 -1
  1377. data/ext/couchbase/third_party/asio/asio/include/asio/ip/detail/impl/endpoint.ipp +1 -1
  1378. data/ext/couchbase/third_party/asio/asio/include/asio/ip/detail/socket_option.hpp +1 -1
  1379. data/ext/couchbase/third_party/asio/asio/include/asio/ip/host_name.hpp +1 -1
  1380. data/ext/couchbase/third_party/asio/asio/include/asio/ip/icmp.hpp +1 -1
  1381. data/ext/couchbase/third_party/asio/asio/include/asio/ip/impl/address.hpp +1 -1
  1382. data/ext/couchbase/third_party/asio/asio/include/asio/ip/impl/address.ipp +1 -1
  1383. data/ext/couchbase/third_party/asio/asio/include/asio/ip/impl/address_v4.hpp +1 -1
  1384. data/ext/couchbase/third_party/asio/asio/include/asio/ip/impl/address_v4.ipp +1 -1
  1385. data/ext/couchbase/third_party/asio/asio/include/asio/ip/impl/address_v6.hpp +1 -1
  1386. data/ext/couchbase/third_party/asio/asio/include/asio/ip/impl/address_v6.ipp +1 -1
  1387. data/ext/couchbase/third_party/asio/asio/include/asio/ip/impl/basic_endpoint.hpp +1 -1
  1388. data/ext/couchbase/third_party/asio/asio/include/asio/ip/impl/host_name.ipp +1 -1
  1389. data/ext/couchbase/third_party/asio/asio/include/asio/ip/impl/network_v4.hpp +1 -1
  1390. data/ext/couchbase/third_party/asio/asio/include/asio/ip/impl/network_v4.ipp +1 -1
  1391. data/ext/couchbase/third_party/asio/asio/include/asio/ip/impl/network_v6.hpp +1 -1
  1392. data/ext/couchbase/third_party/asio/asio/include/asio/ip/impl/network_v6.ipp +1 -1
  1393. data/ext/couchbase/third_party/asio/asio/include/asio/ip/multicast.hpp +1 -1
  1394. data/ext/couchbase/third_party/asio/asio/include/asio/ip/network_v4.hpp +1 -1
  1395. data/ext/couchbase/third_party/asio/asio/include/asio/ip/network_v6.hpp +1 -1
  1396. data/ext/couchbase/third_party/asio/asio/include/asio/ip/resolver_base.hpp +1 -1
  1397. data/ext/couchbase/third_party/asio/asio/include/asio/ip/resolver_query_base.hpp +1 -1
  1398. data/ext/couchbase/third_party/asio/asio/include/asio/ip/tcp.hpp +1 -1
  1399. data/ext/couchbase/third_party/asio/asio/include/asio/ip/udp.hpp +1 -1
  1400. data/ext/couchbase/third_party/asio/asio/include/asio/ip/unicast.hpp +1 -1
  1401. data/ext/couchbase/third_party/asio/asio/include/asio/ip/v6_only.hpp +2 -2
  1402. data/ext/couchbase/third_party/asio/asio/include/asio/is_applicable_property.hpp +1 -1
  1403. data/ext/couchbase/third_party/asio/asio/include/asio/is_contiguous_iterator.hpp +45 -0
  1404. data/ext/couchbase/third_party/asio/asio/include/asio/is_executor.hpp +1 -1
  1405. data/ext/couchbase/third_party/asio/asio/include/asio/is_read_buffered.hpp +1 -1
  1406. data/ext/couchbase/third_party/asio/asio/include/asio/is_write_buffered.hpp +1 -1
  1407. data/ext/couchbase/third_party/asio/asio/include/asio/local/basic_endpoint.hpp +1 -1
  1408. data/ext/couchbase/third_party/asio/asio/include/asio/local/connect_pair.hpp +1 -1
  1409. data/ext/couchbase/third_party/asio/asio/include/asio/local/datagram_protocol.hpp +1 -1
  1410. data/ext/couchbase/third_party/asio/asio/include/asio/local/detail/endpoint.hpp +1 -1
  1411. data/ext/couchbase/third_party/asio/asio/include/asio/local/detail/impl/endpoint.ipp +1 -1
  1412. data/ext/couchbase/third_party/asio/asio/include/asio/local/stream_protocol.hpp +1 -1
  1413. data/ext/couchbase/third_party/asio/asio/include/asio/multiple_exceptions.hpp +1 -1
  1414. data/ext/couchbase/third_party/asio/asio/include/asio/packaged_task.hpp +1 -1
  1415. data/ext/couchbase/third_party/asio/asio/include/asio/placeholders.hpp +1 -1
  1416. data/ext/couchbase/third_party/asio/asio/include/asio/posix/basic_descriptor.hpp +74 -13
  1417. data/ext/couchbase/third_party/asio/asio/include/asio/posix/basic_stream_descriptor.hpp +95 -27
  1418. data/ext/couchbase/third_party/asio/asio/include/asio/posix/descriptor.hpp +1 -1
  1419. data/ext/couchbase/third_party/asio/asio/include/asio/posix/descriptor_base.hpp +1 -1
  1420. data/ext/couchbase/third_party/asio/asio/include/asio/posix/stream_descriptor.hpp +1 -1
  1421. data/ext/couchbase/third_party/asio/asio/include/asio/post.hpp +128 -42
  1422. data/ext/couchbase/third_party/asio/asio/include/asio/prefer.hpp +1 -1
  1423. data/ext/couchbase/third_party/asio/asio/include/asio/prepend.hpp +78 -0
  1424. data/ext/couchbase/third_party/asio/asio/include/asio/query.hpp +1 -1
  1425. data/ext/couchbase/third_party/asio/asio/include/asio/random_access_file.hpp +1 -1
  1426. data/ext/couchbase/third_party/asio/asio/include/asio/read.hpp +245 -153
  1427. data/ext/couchbase/third_party/asio/asio/include/asio/read_at.hpp +110 -53
  1428. data/ext/couchbase/third_party/asio/asio/include/asio/read_until.hpp +301 -166
  1429. data/ext/couchbase/third_party/asio/asio/include/asio/readable_pipe.hpp +1 -1
  1430. data/ext/couchbase/third_party/asio/asio/include/asio/recycling_allocator.hpp +138 -0
  1431. data/ext/couchbase/third_party/asio/asio/include/asio/redirect_error.hpp +3 -3
  1432. data/ext/couchbase/third_party/asio/asio/include/asio/registered_buffer.hpp +1 -1
  1433. data/ext/couchbase/third_party/asio/asio/include/asio/require.hpp +1 -1
  1434. data/ext/couchbase/third_party/asio/asio/include/asio/require_concept.hpp +1 -1
  1435. data/ext/couchbase/third_party/asio/asio/include/asio/serial_port.hpp +1 -1
  1436. data/ext/couchbase/third_party/asio/asio/include/asio/serial_port_base.hpp +1 -1
  1437. data/ext/couchbase/third_party/asio/asio/include/asio/signal_set.hpp +1 -1
  1438. data/ext/couchbase/third_party/asio/asio/include/asio/socket_base.hpp +1 -1
  1439. data/ext/couchbase/third_party/asio/asio/include/asio/spawn.hpp +647 -87
  1440. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/context.hpp +4 -1
  1441. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/context_base.hpp +1 -1
  1442. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/detail/buffered_handshake_op.hpp +1 -1
  1443. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/detail/engine.hpp +4 -1
  1444. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/detail/handshake_op.hpp +1 -1
  1445. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/detail/impl/engine.ipp +19 -1
  1446. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/detail/impl/openssl_init.ipp +7 -3
  1447. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/detail/io.hpp +1 -1
  1448. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/detail/openssl_init.hpp +1 -1
  1449. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/detail/openssl_types.hpp +1 -1
  1450. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/detail/password_callback.hpp +1 -1
  1451. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/detail/read_op.hpp +1 -1
  1452. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/detail/shutdown_op.hpp +1 -1
  1453. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/detail/stream_core.hpp +16 -1
  1454. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/detail/verify_callback.hpp +1 -1
  1455. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/detail/write_op.hpp +1 -1
  1456. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/error.hpp +1 -1
  1457. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/host_name_verification.hpp +1 -1
  1458. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/impl/context.hpp +1 -1
  1459. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/impl/context.ipp +140 -64
  1460. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/impl/error.ipp +25 -3
  1461. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/impl/host_name_verification.ipp +1 -1
  1462. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/impl/rfc2818_verification.ipp +1 -1
  1463. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/impl/src.hpp +1 -1
  1464. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/rfc2818_verification.hpp +1 -1
  1465. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/stream.hpp +154 -53
  1466. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/stream_base.hpp +1 -1
  1467. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/verify_context.hpp +1 -1
  1468. data/ext/couchbase/third_party/asio/asio/include/asio/ssl/verify_mode.hpp +1 -1
  1469. data/ext/couchbase/third_party/asio/asio/include/asio/ssl.hpp +1 -1
  1470. data/ext/couchbase/third_party/asio/asio/include/asio/static_thread_pool.hpp +1 -1
  1471. data/ext/couchbase/third_party/asio/asio/include/asio/steady_timer.hpp +1 -1
  1472. data/ext/couchbase/third_party/asio/asio/include/asio/strand.hpp +12 -1
  1473. data/ext/couchbase/third_party/asio/asio/include/asio/stream_file.hpp +1 -1
  1474. data/ext/couchbase/third_party/asio/asio/include/asio/streambuf.hpp +1 -1
  1475. data/ext/couchbase/third_party/asio/asio/include/asio/system_context.hpp +1 -1
  1476. data/ext/couchbase/third_party/asio/asio/include/asio/system_error.hpp +1 -1
  1477. data/ext/couchbase/third_party/asio/asio/include/asio/system_executor.hpp +1 -1
  1478. data/ext/couchbase/third_party/asio/asio/include/asio/system_timer.hpp +1 -1
  1479. data/ext/couchbase/third_party/asio/asio/include/asio/this_coro.hpp +4 -4
  1480. data/ext/couchbase/third_party/asio/asio/include/asio/thread.hpp +1 -1
  1481. data/ext/couchbase/third_party/asio/asio/include/asio/thread_pool.hpp +1 -1
  1482. data/ext/couchbase/third_party/asio/asio/include/asio/time_traits.hpp +1 -1
  1483. data/ext/couchbase/third_party/asio/asio/include/asio/traits/bulk_execute_free.hpp +1 -1
  1484. data/ext/couchbase/third_party/asio/asio/include/asio/traits/bulk_execute_member.hpp +1 -1
  1485. data/ext/couchbase/third_party/asio/asio/include/asio/traits/connect_free.hpp +1 -1
  1486. data/ext/couchbase/third_party/asio/asio/include/asio/traits/connect_member.hpp +1 -1
  1487. data/ext/couchbase/third_party/asio/asio/include/asio/traits/equality_comparable.hpp +1 -1
  1488. data/ext/couchbase/third_party/asio/asio/include/asio/traits/execute_free.hpp +1 -1
  1489. data/ext/couchbase/third_party/asio/asio/include/asio/traits/execute_member.hpp +1 -1
  1490. data/ext/couchbase/third_party/asio/asio/include/asio/traits/prefer_free.hpp +1 -1
  1491. data/ext/couchbase/third_party/asio/asio/include/asio/traits/prefer_member.hpp +1 -1
  1492. data/ext/couchbase/third_party/asio/asio/include/asio/traits/query_free.hpp +1 -1
  1493. data/ext/couchbase/third_party/asio/asio/include/asio/traits/query_member.hpp +1 -1
  1494. data/ext/couchbase/third_party/asio/asio/include/asio/traits/query_static_constexpr_member.hpp +1 -1
  1495. data/ext/couchbase/third_party/asio/asio/include/asio/traits/require_concept_free.hpp +1 -1
  1496. data/ext/couchbase/third_party/asio/asio/include/asio/traits/require_concept_member.hpp +1 -1
  1497. data/ext/couchbase/third_party/asio/asio/include/asio/traits/require_free.hpp +1 -1
  1498. data/ext/couchbase/third_party/asio/asio/include/asio/traits/require_member.hpp +1 -1
  1499. data/ext/couchbase/third_party/asio/asio/include/asio/traits/schedule_free.hpp +1 -1
  1500. data/ext/couchbase/third_party/asio/asio/include/asio/traits/schedule_member.hpp +1 -1
  1501. data/ext/couchbase/third_party/asio/asio/include/asio/traits/set_done_free.hpp +1 -1
  1502. data/ext/couchbase/third_party/asio/asio/include/asio/traits/set_done_member.hpp +1 -1
  1503. data/ext/couchbase/third_party/asio/asio/include/asio/traits/set_error_free.hpp +1 -1
  1504. data/ext/couchbase/third_party/asio/asio/include/asio/traits/set_error_member.hpp +1 -1
  1505. data/ext/couchbase/third_party/asio/asio/include/asio/traits/set_value_free.hpp +1 -1
  1506. data/ext/couchbase/third_party/asio/asio/include/asio/traits/set_value_member.hpp +1 -1
  1507. data/ext/couchbase/third_party/asio/asio/include/asio/traits/start_free.hpp +1 -1
  1508. data/ext/couchbase/third_party/asio/asio/include/asio/traits/start_member.hpp +1 -1
  1509. data/ext/couchbase/third_party/asio/asio/include/asio/traits/static_query.hpp +1 -1
  1510. data/ext/couchbase/third_party/asio/asio/include/asio/traits/static_require.hpp +1 -1
  1511. data/ext/couchbase/third_party/asio/asio/include/asio/traits/static_require_concept.hpp +1 -1
  1512. data/ext/couchbase/third_party/asio/asio/include/asio/traits/submit_free.hpp +1 -1
  1513. data/ext/couchbase/third_party/asio/asio/include/asio/traits/submit_member.hpp +1 -1
  1514. data/ext/couchbase/third_party/asio/asio/include/asio/ts/buffer.hpp +1 -1
  1515. data/ext/couchbase/third_party/asio/asio/include/asio/ts/executor.hpp +1 -1
  1516. data/ext/couchbase/third_party/asio/asio/include/asio/ts/internet.hpp +1 -1
  1517. data/ext/couchbase/third_party/asio/asio/include/asio/ts/io_context.hpp +1 -1
  1518. data/ext/couchbase/third_party/asio/asio/include/asio/ts/net.hpp +1 -1
  1519. data/ext/couchbase/third_party/asio/asio/include/asio/ts/netfwd.hpp +1 -1
  1520. data/ext/couchbase/third_party/asio/asio/include/asio/ts/socket.hpp +1 -1
  1521. data/ext/couchbase/third_party/asio/asio/include/asio/ts/timer.hpp +1 -1
  1522. data/ext/couchbase/third_party/asio/asio/include/asio/unyield.hpp +1 -1
  1523. data/ext/couchbase/third_party/asio/asio/include/asio/use_awaitable.hpp +4 -3
  1524. data/ext/couchbase/third_party/asio/asio/include/asio/use_future.hpp +10 -7
  1525. data/ext/couchbase/third_party/asio/asio/include/asio/uses_executor.hpp +1 -1
  1526. data/ext/couchbase/third_party/asio/asio/include/asio/version.hpp +2 -2
  1527. data/ext/couchbase/third_party/asio/asio/include/asio/wait_traits.hpp +1 -1
  1528. data/ext/couchbase/third_party/asio/asio/include/asio/windows/basic_object_handle.hpp +70 -12
  1529. data/ext/couchbase/third_party/asio/asio/include/asio/windows/basic_overlapped_handle.hpp +100 -1
  1530. data/ext/couchbase/third_party/asio/asio/include/asio/windows/basic_random_access_handle.hpp +98 -29
  1531. data/ext/couchbase/third_party/asio/asio/include/asio/windows/basic_stream_handle.hpp +95 -28
  1532. data/ext/couchbase/third_party/asio/asio/include/asio/windows/object_handle.hpp +1 -1
  1533. data/ext/couchbase/third_party/asio/asio/include/asio/windows/overlapped_handle.hpp +1 -1
  1534. data/ext/couchbase/third_party/asio/asio/include/asio/windows/overlapped_ptr.hpp +1 -1
  1535. data/ext/couchbase/third_party/asio/asio/include/asio/windows/random_access_handle.hpp +1 -1
  1536. data/ext/couchbase/third_party/asio/asio/include/asio/windows/stream_handle.hpp +1 -1
  1537. data/ext/couchbase/third_party/asio/asio/include/asio/writable_pipe.hpp +1 -1
  1538. data/ext/couchbase/third_party/asio/asio/include/asio/write.hpp +242 -150
  1539. data/ext/couchbase/third_party/asio/asio/include/asio/write_at.hpp +112 -53
  1540. data/ext/couchbase/third_party/asio/asio/include/asio/yield.hpp +1 -1
  1541. data/ext/couchbase/third_party/asio/asio/include/asio.hpp +8 -1
  1542. data/ext/couchbase/third_party/expected/COPYING +121 -0
  1543. data/ext/couchbase/third_party/expected/include/tl/expected.hpp +2571 -0
  1544. data/ext/couchbase/third_party/json/CMakeLists.txt +3 -0
  1545. data/ext/couchbase/third_party/json/external/PEGTL/LICENSE +1 -1
  1546. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/apply_mode.hpp +1 -1
  1547. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/argv_input.hpp +1 -1
  1548. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/ascii.hpp +1 -1
  1549. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/buffer_input.hpp +2 -2
  1550. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/change_action.hpp +1 -1
  1551. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/change_action_and_state.hpp +1 -1
  1552. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/change_action_and_states.hpp +1 -1
  1553. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/change_control.hpp +1 -1
  1554. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/change_state.hpp +1 -1
  1555. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/change_states.hpp +1 -1
  1556. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/config.hpp +1 -1
  1557. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/abnf.hpp +1 -1
  1558. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/add_state.hpp +1 -1
  1559. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/alphabet.hpp +1 -1
  1560. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/analyze.hpp +1 -1
  1561. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/analyze_traits.hpp +1 -1
  1562. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/check_bytes.hpp +1 -1
  1563. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/control_action.hpp +13 -1
  1564. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/coverage.hpp +1 -1
  1565. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/forward.hpp +1 -1
  1566. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/function.hpp +1 -1
  1567. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/http.hpp +1 -1
  1568. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/icu/internal.hpp +1 -1
  1569. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/icu/utf16.hpp +1 -1
  1570. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/icu/utf32.hpp +1 -1
  1571. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/icu/utf8.hpp +1 -1
  1572. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/if_then.hpp +1 -1
  1573. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/instantiate.hpp +1 -1
  1574. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/integer.hpp +1 -1
  1575. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/internal/endian.hpp +1 -1
  1576. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/internal/endian_gcc.hpp +1 -1
  1577. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/internal/endian_win.hpp +1 -1
  1578. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/internal/peek_mask_uint.hpp +1 -1
  1579. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/internal/peek_mask_uint8.hpp +1 -1
  1580. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/internal/peek_uint.hpp +1 -1
  1581. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/internal/peek_uint8.hpp +1 -1
  1582. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/internal/peek_utf16.hpp +1 -1
  1583. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/internal/peek_utf32.hpp +1 -1
  1584. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/internal/read_uint.hpp +1 -1
  1585. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/internal/set_stack_guard.hpp +1 -1
  1586. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/internal/vector_stack_guard.hpp +1 -1
  1587. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/iri.hpp +1 -1
  1588. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/json.hpp +1 -1
  1589. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/json_pointer.hpp +1 -1
  1590. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/limit_bytes.hpp +1 -1
  1591. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/limit_depth.hpp +1 -1
  1592. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/parse_tree.hpp +17 -8
  1593. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/parse_tree_to_dot.hpp +1 -1
  1594. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/peg.hpp +1 -1
  1595. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/predicates.hpp +1 -1
  1596. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/print.hpp +1 -1
  1597. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/print_coverage.hpp +1 -1
  1598. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/proto3.hpp +1 -1
  1599. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/raw_string.hpp +1 -1
  1600. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/remove_first_state.hpp +1 -1
  1601. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/remove_last_states.hpp +1 -1
  1602. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/rep_one_min_max.hpp +1 -1
  1603. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/rep_string.hpp +1 -1
  1604. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/separated_seq.hpp +1 -1
  1605. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/shuffle_states.hpp +1 -1
  1606. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/state_control.hpp +1 -1
  1607. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/to_string.hpp +1 -1
  1608. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/trace.hpp +1 -1
  1609. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/uint16.hpp +1 -1
  1610. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/uint32.hpp +1 -1
  1611. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/uint64.hpp +1 -1
  1612. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/uint8.hpp +1 -1
  1613. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/unescape.hpp +1 -1
  1614. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/uri.hpp +1 -1
  1615. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/utf16.hpp +1 -1
  1616. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/contrib/utf32.hpp +1 -1
  1617. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/cstream_input.hpp +1 -1
  1618. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/demangle.hpp +19 -11
  1619. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/disable_action.hpp +1 -1
  1620. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/discard_input.hpp +1 -1
  1621. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/discard_input_on_failure.hpp +1 -1
  1622. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/discard_input_on_success.hpp +1 -1
  1623. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/enable_action.hpp +1 -1
  1624. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/eol.hpp +1 -1
  1625. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/eol_pair.hpp +1 -1
  1626. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/file_input.hpp +1 -1
  1627. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/action.hpp +1 -1
  1628. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/action_input.hpp +1 -1
  1629. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/any.hpp +1 -1
  1630. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/apply.hpp +1 -1
  1631. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/apply0.hpp +1 -1
  1632. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/apply0_single.hpp +1 -1
  1633. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/apply_single.hpp +1 -1
  1634. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/at.hpp +1 -1
  1635. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/bof.hpp +1 -1
  1636. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/bol.hpp +1 -1
  1637. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/bump.hpp +1 -1
  1638. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/bump_help.hpp +1 -1
  1639. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/bytes.hpp +1 -1
  1640. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/control.hpp +1 -1
  1641. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/cr_crlf_eol.hpp +1 -1
  1642. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/cr_eol.hpp +1 -1
  1643. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/crlf_eol.hpp +1 -1
  1644. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/cstream_reader.hpp +1 -1
  1645. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/cstring_reader.hpp +1 -1
  1646. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/dependent_false.hpp +1 -1
  1647. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/disable.hpp +1 -1
  1648. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/discard.hpp +1 -1
  1649. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/enable.hpp +1 -1
  1650. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/enable_control.hpp +1 -1
  1651. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/eof.hpp +1 -1
  1652. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/eol.hpp +1 -1
  1653. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/eolf.hpp +1 -1
  1654. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/failure.hpp +1 -1
  1655. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/file_mapper_posix.hpp +1 -1
  1656. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/file_mapper_win32.hpp +1 -1
  1657. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/file_reader.hpp +1 -1
  1658. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/filesystem.hpp +1 -1
  1659. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/has_apply.hpp +1 -1
  1660. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/has_apply0.hpp +1 -1
  1661. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/has_match.hpp +1 -1
  1662. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/has_unwind.hpp +1 -1
  1663. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/identifier.hpp +1 -1
  1664. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/if_apply.hpp +1 -1
  1665. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/if_must.hpp +1 -1
  1666. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/if_must_else.hpp +1 -1
  1667. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/if_then_else.hpp +1 -1
  1668. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/input_pair.hpp +1 -1
  1669. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/istream_reader.hpp +1 -1
  1670. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/istring.hpp +1 -1
  1671. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/iterator.hpp +1 -1
  1672. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/lf_crlf_eol.hpp +1 -1
  1673. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/lf_eol.hpp +1 -1
  1674. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/list.hpp +1 -1
  1675. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/list_must.hpp +1 -1
  1676. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/list_tail.hpp +1 -1
  1677. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/list_tail_pad.hpp +1 -1
  1678. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/marker.hpp +1 -1
  1679. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/minus.hpp +1 -1
  1680. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/missing_apply.hpp +1 -1
  1681. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/missing_apply0.hpp +1 -1
  1682. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/must.hpp +1 -1
  1683. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/not_at.hpp +1 -1
  1684. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/one.hpp +1 -1
  1685. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/opt.hpp +1 -1
  1686. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/pad.hpp +1 -1
  1687. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/pad_opt.hpp +1 -1
  1688. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/path_to_string.hpp +1 -1
  1689. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/peek_char.hpp +1 -1
  1690. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/peek_utf8.hpp +1 -1
  1691. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/pegtl_string.hpp +1 -1
  1692. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/plus.hpp +1 -1
  1693. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/raise.hpp +1 -1
  1694. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/range.hpp +1 -1
  1695. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/ranges.hpp +1 -1
  1696. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/rematch.hpp +1 -1
  1697. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/rep.hpp +1 -1
  1698. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/rep_min.hpp +1 -1
  1699. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/rep_min_max.hpp +1 -1
  1700. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/rep_opt.hpp +1 -1
  1701. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/require.hpp +1 -1
  1702. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/result_on_found.hpp +1 -1
  1703. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/rules.hpp +1 -1
  1704. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/seq.hpp +1 -1
  1705. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/sor.hpp +1 -1
  1706. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/star.hpp +1 -1
  1707. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/star_must.hpp +1 -1
  1708. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/state.hpp +1 -1
  1709. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/string.hpp +1 -1
  1710. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/success.hpp +1 -1
  1711. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/try_catch_type.hpp +1 -1
  1712. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/until.hpp +1 -1
  1713. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/istream_input.hpp +1 -1
  1714. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/match.hpp +1 -1
  1715. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/memory_input.hpp +1 -1
  1716. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/mmap_input.hpp +1 -1
  1717. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/must_if.hpp +1 -1
  1718. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/normal.hpp +1 -1
  1719. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/nothing.hpp +1 -1
  1720. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/parse.hpp +1 -1
  1721. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/parse_error.hpp +1 -1
  1722. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/position.hpp +1 -1
  1723. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/read_input.hpp +1 -1
  1724. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/require_apply.hpp +1 -1
  1725. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/require_apply0.hpp +1 -1
  1726. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/rewind_mode.hpp +1 -1
  1727. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/rules.hpp +1 -1
  1728. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/string_input.hpp +1 -1
  1729. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/tracking_mode.hpp +1 -1
  1730. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/type_list.hpp +1 -1
  1731. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/utf8.hpp +1 -1
  1732. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/version.hpp +2 -2
  1733. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/visit.hpp +1 -1
  1734. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl.hpp +1 -1
  1735. data/ext/couchbase/third_party/json/include/tao/json/binary_view.hpp +14 -0
  1736. data/ext/couchbase/third_party/json/include/tao/json/contrib/from_nlohmann.hpp +67 -0
  1737. data/ext/couchbase/third_party/json/include/tao/json/contrib/to_nlohmann.hpp +122 -0
  1738. data/ext/couchbase/third_party/json/include/tao/json/events/capture.hpp +482 -0
  1739. data/ext/couchbase/third_party/json/include/tao/json/events/from_value.hpp +3 -3
  1740. data/ext/couchbase/third_party/json/include/tao/json/events/produce.hpp +3 -95
  1741. data/ext/couchbase/third_party/json/include/tao/json/events/set_value.hpp +142 -0
  1742. data/ext/couchbase/third_party/json/include/tao/json/events/to_value.hpp +5 -112
  1743. data/ext/couchbase/third_party/json/include/tao/json/events/virtualize.hpp +27 -0
  1744. data/ext/couchbase/third_party/json/include/tao/json/events.hpp +3 -0
  1745. data/ext/couchbase/third_party/json/include/tao/json/traits.hpp +1 -1
  1746. data/ext/couchbase.cxx +2391 -1597
  1747. data/ext/extconf.rb +2 -0
  1748. data/ext/revisions.rb +2 -2
  1749. data/lib/couchbase/bucket.rb +2 -2
  1750. data/lib/couchbase/cluster.rb +12 -6
  1751. data/lib/couchbase/cluster_registry.rb +44 -0
  1752. data/lib/couchbase/collection.rb +61 -35
  1753. data/lib/couchbase/collection_options.rb +51 -95
  1754. data/lib/couchbase/config_profiles.rb +55 -0
  1755. data/lib/couchbase/logger.rb +44 -1
  1756. data/lib/couchbase/management/analytics_index_manager.rb +12 -12
  1757. data/lib/couchbase/management/query_index_manager.rb +5 -7
  1758. data/lib/couchbase/management/user_manager.rb +19 -0
  1759. data/lib/couchbase/options.rb +404 -56
  1760. data/lib/couchbase/query_options.rb +4 -4
  1761. data/lib/couchbase/scope.rb +3 -3
  1762. data/lib/couchbase/search_options.rb +7 -8
  1763. data/lib/couchbase/utils/generic_logger_adapter.rb +38 -0
  1764. data/lib/couchbase/utils/stdlib_logger_adapter.rb +65 -0
  1765. data/lib/couchbase/utils/time.rb +6 -6
  1766. data/lib/couchbase/version.rb +4 -18
  1767. metadata +880 -464
  1768. data/ext/couchbase/couchbase/analytics_scan_consistency.hxx +0 -26
  1769. data/ext/couchbase/couchbase/capella_ca.hxx +0 -43
  1770. data/ext/couchbase/couchbase/cas_fmt.hxx +0 -37
  1771. data/ext/couchbase/couchbase/cluster.cxx +0 -111
  1772. data/ext/couchbase/couchbase/cluster_options.cxx +0 -45
  1773. data/ext/couchbase/couchbase/crypto/CMakeLists.txt +0 -12
  1774. data/ext/couchbase/couchbase/crypto/cbcrypto.cc +0 -887
  1775. data/ext/couchbase/couchbase/crypto/cbcrypto.h +0 -88
  1776. data/ext/couchbase/couchbase/design_document_namespace.hxx +0 -26
  1777. data/ext/couchbase/couchbase/design_document_namespace_fmt.hxx +0 -47
  1778. data/ext/couchbase/couchbase/diagnostics.hxx +0 -97
  1779. data/ext/couchbase/couchbase/diagnostics_fmt.hxx +0 -113
  1780. data/ext/couchbase/couchbase/diagnostics_json.hxx +0 -100
  1781. data/ext/couchbase/couchbase/document_id.cxx +0 -89
  1782. data/ext/couchbase/couchbase/document_id.hxx +0 -102
  1783. data/ext/couchbase/couchbase/document_id_fmt.hxx +0 -37
  1784. data/ext/couchbase/couchbase/error_context/analytics.hxx +0 -51
  1785. data/ext/couchbase/couchbase/error_context/http.hxx +0 -47
  1786. data/ext/couchbase/couchbase/error_context/key_value.hxx +0 -50
  1787. data/ext/couchbase/couchbase/error_context/query.hxx +0 -51
  1788. data/ext/couchbase/couchbase/error_context/search.hxx +0 -50
  1789. data/ext/couchbase/couchbase/error_context/view.hxx +0 -51
  1790. data/ext/couchbase/couchbase/errors.hxx +0 -1038
  1791. data/ext/couchbase/couchbase/io/CMakeLists.txt +0 -12
  1792. data/ext/couchbase/couchbase/io/dns_client.hxx +0 -217
  1793. data/ext/couchbase/couchbase/io/dns_codec.hxx +0 -206
  1794. data/ext/couchbase/couchbase/io/dns_config.hxx +0 -115
  1795. data/ext/couchbase/couchbase/io/dns_message.hxx +0 -555
  1796. data/ext/couchbase/couchbase/io/http_command.hxx +0 -174
  1797. data/ext/couchbase/couchbase/io/http_context.hxx +0 -40
  1798. data/ext/couchbase/couchbase/io/http_message.hxx +0 -116
  1799. data/ext/couchbase/couchbase/io/http_parser.cxx +0 -141
  1800. data/ext/couchbase/couchbase/io/http_parser.hxx +0 -55
  1801. data/ext/couchbase/couchbase/io/http_session.hxx +0 -544
  1802. data/ext/couchbase/couchbase/io/http_session_manager.hxx +0 -377
  1803. data/ext/couchbase/couchbase/io/http_traits.hxx +0 -30
  1804. data/ext/couchbase/couchbase/io/ip_protocol.hxx +0 -28
  1805. data/ext/couchbase/couchbase/io/mcbp_command.hxx +0 -300
  1806. data/ext/couchbase/couchbase/io/mcbp_context.hxx +0 -39
  1807. data/ext/couchbase/couchbase/io/mcbp_message.cxx +0 -39
  1808. data/ext/couchbase/couchbase/io/mcbp_message.hxx +0 -55
  1809. data/ext/couchbase/couchbase/io/mcbp_parser.cxx +0 -86
  1810. data/ext/couchbase/couchbase/io/mcbp_parser.hxx +0 -45
  1811. data/ext/couchbase/couchbase/io/mcbp_session.hxx +0 -1317
  1812. data/ext/couchbase/couchbase/io/mcbp_traits.hxx +0 -30
  1813. data/ext/couchbase/couchbase/io/query_cache.hxx +0 -61
  1814. data/ext/couchbase/couchbase/io/retry_action.hxx +0 -30
  1815. data/ext/couchbase/couchbase/io/retry_context.hxx +0 -38
  1816. data/ext/couchbase/couchbase/io/retry_orchestrator.hxx +0 -112
  1817. data/ext/couchbase/couchbase/io/retry_reason.hxx +0 -158
  1818. data/ext/couchbase/couchbase/io/retry_reason_fmt.hxx +0 -103
  1819. data/ext/couchbase/couchbase/io/retry_strategy.hxx +0 -152
  1820. data/ext/couchbase/couchbase/io/streams.hxx +0 -253
  1821. data/ext/couchbase/couchbase/json_string.hxx +0 -48
  1822. data/ext/couchbase/couchbase/logger/CMakeLists.txt +0 -9
  1823. data/ext/couchbase/couchbase/logger/configuration.hxx +0 -52
  1824. data/ext/couchbase/couchbase/logger/custom_rotating_file_sink.cxx +0 -157
  1825. data/ext/couchbase/couchbase/logger/logger.cxx +0 -337
  1826. data/ext/couchbase/couchbase/logger/logger.hxx +0 -235
  1827. data/ext/couchbase/couchbase/management/CMakeLists.txt +0 -13
  1828. data/ext/couchbase/couchbase/management/analytics_dataset.hxx +0 -30
  1829. data/ext/couchbase/couchbase/management/analytics_index.hxx +0 -30
  1830. data/ext/couchbase/couchbase/management/analytics_link.hxx +0 -22
  1831. data/ext/couchbase/couchbase/management/analytics_link_azure_blob_external.cxx +0 -67
  1832. data/ext/couchbase/couchbase/management/analytics_link_azure_blob_external.hxx +0 -76
  1833. data/ext/couchbase/couchbase/management/analytics_link_azure_blob_external_json.hxx +0 -52
  1834. data/ext/couchbase/couchbase/management/analytics_link_couchbase_remote.cxx +0 -104
  1835. data/ext/couchbase/couchbase/management/analytics_link_couchbase_remote.hxx +0 -107
  1836. data/ext/couchbase/couchbase/management/analytics_link_couchbase_remote_json.hxx +0 -63
  1837. data/ext/couchbase/couchbase/management/analytics_link_s3_external.cxx +0 -57
  1838. data/ext/couchbase/couchbase/management/analytics_link_s3_external.hxx +0 -69
  1839. data/ext/couchbase/couchbase/management/analytics_link_s3_external_json.hxx +0 -47
  1840. data/ext/couchbase/couchbase/management/bucket_settings.hxx +0 -134
  1841. data/ext/couchbase/couchbase/management/bucket_settings_json.hxx +0 -123
  1842. data/ext/couchbase/couchbase/management/design_document.hxx +0 -41
  1843. data/ext/couchbase/couchbase/management/eventing_function.hxx +0 -188
  1844. data/ext/couchbase/couchbase/management/eventing_function_json.hxx +0 -212
  1845. data/ext/couchbase/couchbase/management/eventing_status.hxx +0 -84
  1846. data/ext/couchbase/couchbase/management/eventing_status_json.hxx +0 -77
  1847. data/ext/couchbase/couchbase/management/rbac.hxx +0 -77
  1848. data/ext/couchbase/couchbase/management/rbac_fmt.hxx +0 -49
  1849. data/ext/couchbase/couchbase/management/rbac_json.hxx +0 -179
  1850. data/ext/couchbase/couchbase/management/search_index.hxx +0 -38
  1851. data/ext/couchbase/couchbase/management/search_index_json.hxx +0 -58
  1852. data/ext/couchbase/couchbase/meta/CMakeLists.txt +0 -15
  1853. data/ext/couchbase/couchbase/meta/version.cxx +0 -181
  1854. data/ext/couchbase/couchbase/meta/version.hxx +0 -45
  1855. data/ext/couchbase/couchbase/metrics/CMakeLists.txt +0 -11
  1856. data/ext/couchbase/couchbase/metrics/logging_meter.cxx +0 -194
  1857. data/ext/couchbase/couchbase/metrics/logging_meter.hxx +0 -74
  1858. data/ext/couchbase/couchbase/metrics/logging_meter_options.hxx +0 -28
  1859. data/ext/couchbase/couchbase/metrics/noop_meter.hxx +0 -47
  1860. data/ext/couchbase/couchbase/mutation_token_fmt.hxx +0 -37
  1861. data/ext/couchbase/couchbase/operations/CMakeLists.txt +0 -35
  1862. data/ext/couchbase/couchbase/operations/document_analytics.cxx +0 -195
  1863. data/ext/couchbase/couchbase/operations/document_analytics.hxx +0 -92
  1864. data/ext/couchbase/couchbase/operations/document_append.cxx +0 -46
  1865. data/ext/couchbase/couchbase/operations/document_append.hxx +0 -63
  1866. data/ext/couchbase/couchbase/operations/document_decrement.cxx +0 -57
  1867. data/ext/couchbase/couchbase/operations/document_decrement.hxx +0 -67
  1868. data/ext/couchbase/couchbase/operations/document_exists.cxx +0 -49
  1869. data/ext/couchbase/couchbase/operations/document_exists.hxx +0 -61
  1870. data/ext/couchbase/couchbase/operations/document_get.cxx +0 -44
  1871. data/ext/couchbase/couchbase/operations/document_get.hxx +0 -53
  1872. data/ext/couchbase/couchbase/operations/document_get_and_lock.cxx +0 -45
  1873. data/ext/couchbase/couchbase/operations/document_get_and_lock.hxx +0 -54
  1874. data/ext/couchbase/couchbase/operations/document_get_and_touch.cxx +0 -45
  1875. data/ext/couchbase/couchbase/operations/document_get_and_touch.hxx +0 -54
  1876. data/ext/couchbase/couchbase/operations/document_get_projected.cxx +0 -227
  1877. data/ext/couchbase/couchbase/operations/document_get_projected.hxx +0 -58
  1878. data/ext/couchbase/couchbase/operations/document_increment.cxx +0 -57
  1879. data/ext/couchbase/couchbase/operations/document_increment.hxx +0 -67
  1880. data/ext/couchbase/couchbase/operations/document_insert.cxx +0 -48
  1881. data/ext/couchbase/couchbase/operations/document_insert.hxx +0 -65
  1882. data/ext/couchbase/couchbase/operations/document_lookup_in.cxx +0 -81
  1883. data/ext/couchbase/couchbase/operations/document_lookup_in.hxx +0 -64
  1884. data/ext/couchbase/couchbase/operations/document_mutate_in.cxx +0 -104
  1885. data/ext/couchbase/couchbase/operations/document_mutate_in.hxx +0 -82
  1886. data/ext/couchbase/couchbase/operations/document_prepend.cxx +0 -46
  1887. data/ext/couchbase/couchbase/operations/document_prepend.hxx +0 -63
  1888. data/ext/couchbase/couchbase/operations/document_query.cxx +0 -370
  1889. data/ext/couchbase/couchbase/operations/document_query.hxx +0 -123
  1890. data/ext/couchbase/couchbase/operations/document_remove.cxx +0 -46
  1891. data/ext/couchbase/couchbase/operations/document_remove.hxx +0 -63
  1892. data/ext/couchbase/couchbase/operations/document_replace.cxx +0 -52
  1893. data/ext/couchbase/couchbase/operations/document_replace.hxx +0 -67
  1894. data/ext/couchbase/couchbase/operations/document_search.cxx +0 -311
  1895. data/ext/couchbase/couchbase/operations/document_search.hxx +0 -153
  1896. data/ext/couchbase/couchbase/operations/document_touch.cxx +0 -43
  1897. data/ext/couchbase/couchbase/operations/document_touch.hxx +0 -52
  1898. data/ext/couchbase/couchbase/operations/document_unlock.cxx +0 -43
  1899. data/ext/couchbase/couchbase/operations/document_unlock.hxx +0 -52
  1900. data/ext/couchbase/couchbase/operations/document_upsert.cxx +0 -52
  1901. data/ext/couchbase/couchbase/operations/document_upsert.hxx +0 -66
  1902. data/ext/couchbase/couchbase/operations/document_view.cxx +0 -183
  1903. data/ext/couchbase/couchbase/operations/document_view.hxx +0 -97
  1904. data/ext/couchbase/couchbase/operations/http_noop.cxx +0 -60
  1905. data/ext/couchbase/couchbase/operations/http_noop.hxx +0 -48
  1906. data/ext/couchbase/couchbase/operations/management/CMakeLists.txt +0 -79
  1907. data/ext/couchbase/couchbase/operations/management/analytics.hxx +0 -34
  1908. data/ext/couchbase/couchbase/operations/management/analytics_dataset_create.cxx +0 -94
  1909. data/ext/couchbase/couchbase/operations/management/analytics_dataset_create.hxx +0 -57
  1910. data/ext/couchbase/couchbase/operations/management/analytics_dataset_drop.cxx +0 -83
  1911. data/ext/couchbase/couchbase/operations/management/analytics_dataset_drop.hxx +0 -54
  1912. data/ext/couchbase/couchbase/operations/management/analytics_dataset_get_all.cxx +0 -80
  1913. data/ext/couchbase/couchbase/operations/management/analytics_dataset_get_all.hxx +0 -52
  1914. data/ext/couchbase/couchbase/operations/management/analytics_dataverse_create.cxx +0 -82
  1915. data/ext/couchbase/couchbase/operations/management/analytics_dataverse_create.hxx +0 -53
  1916. data/ext/couchbase/couchbase/operations/management/analytics_dataverse_drop.cxx +0 -82
  1917. data/ext/couchbase/couchbase/operations/management/analytics_dataverse_drop.hxx +0 -53
  1918. data/ext/couchbase/couchbase/operations/management/analytics_get_pending_mutations.cxx +0 -70
  1919. data/ext/couchbase/couchbase/operations/management/analytics_get_pending_mutations.hxx +0 -52
  1920. data/ext/couchbase/couchbase/operations/management/analytics_index_create.cxx +0 -106
  1921. data/ext/couchbase/couchbase/operations/management/analytics_index_create.hxx +0 -56
  1922. data/ext/couchbase/couchbase/operations/management/analytics_index_drop.cxx +0 -90
  1923. data/ext/couchbase/couchbase/operations/management/analytics_index_drop.hxx +0 -55
  1924. data/ext/couchbase/couchbase/operations/management/analytics_index_get_all.cxx +0 -80
  1925. data/ext/couchbase/couchbase/operations/management/analytics_index_get_all.hxx +0 -52
  1926. data/ext/couchbase/couchbase/operations/management/analytics_link_connect.cxx +0 -82
  1927. data/ext/couchbase/couchbase/operations/management/analytics_link_connect.hxx +0 -57
  1928. data/ext/couchbase/couchbase/operations/management/analytics_link_create.cxx +0 -87
  1929. data/ext/couchbase/couchbase/operations/management/analytics_link_create.hxx +0 -77
  1930. data/ext/couchbase/couchbase/operations/management/analytics_link_disconnect.cxx +0 -80
  1931. data/ext/couchbase/couchbase/operations/management/analytics_link_disconnect.hxx +0 -56
  1932. data/ext/couchbase/couchbase/operations/management/analytics_link_drop.cxx +0 -103
  1933. data/ext/couchbase/couchbase/operations/management/analytics_link_drop.hxx +0 -56
  1934. data/ext/couchbase/couchbase/operations/management/analytics_link_get_all.cxx +0 -130
  1935. data/ext/couchbase/couchbase/operations/management/analytics_link_get_all.hxx +0 -63
  1936. data/ext/couchbase/couchbase/operations/management/analytics_link_replace.cxx +0 -87
  1937. data/ext/couchbase/couchbase/operations/management/analytics_link_replace.hxx +0 -78
  1938. data/ext/couchbase/couchbase/operations/management/analytics_link_utils.hxx +0 -37
  1939. data/ext/couchbase/couchbase/operations/management/analytics_problem.hxx +0 -30
  1940. data/ext/couchbase/couchbase/operations/management/bucket.hxx +0 -25
  1941. data/ext/couchbase/couchbase/operations/management/bucket_create.cxx +0 -171
  1942. data/ext/couchbase/couchbase/operations/management/bucket_create.hxx +0 -52
  1943. data/ext/couchbase/couchbase/operations/management/bucket_describe.cxx +0 -67
  1944. data/ext/couchbase/couchbase/operations/management/bucket_describe.hxx +0 -61
  1945. data/ext/couchbase/couchbase/operations/management/bucket_drop.cxx +0 -52
  1946. data/ext/couchbase/couchbase/operations/management/bucket_drop.hxx +0 -49
  1947. data/ext/couchbase/couchbase/operations/management/bucket_flush.cxx +0 -59
  1948. data/ext/couchbase/couchbase/operations/management/bucket_flush.hxx +0 -49
  1949. data/ext/couchbase/couchbase/operations/management/bucket_get.cxx +0 -59
  1950. data/ext/couchbase/couchbase/operations/management/bucket_get.hxx +0 -51
  1951. data/ext/couchbase/couchbase/operations/management/bucket_get_all.cxx +0 -59
  1952. data/ext/couchbase/couchbase/operations/management/bucket_get_all.hxx +0 -49
  1953. data/ext/couchbase/couchbase/operations/management/bucket_update.cxx +0 -130
  1954. data/ext/couchbase/couchbase/operations/management/bucket_update.hxx +0 -52
  1955. data/ext/couchbase/couchbase/operations/management/cluster_describe.cxx +0 -90
  1956. data/ext/couchbase/couchbase/operations/management/cluster_describe.hxx +0 -72
  1957. data/ext/couchbase/couchbase/operations/management/cluster_developer_preview_enable.cxx +0 -44
  1958. data/ext/couchbase/couchbase/operations/management/cluster_developer_preview_enable.hxx +0 -48
  1959. data/ext/couchbase/couchbase/operations/management/collection_create.cxx +0 -83
  1960. data/ext/couchbase/couchbase/operations/management/collection_create.hxx +0 -53
  1961. data/ext/couchbase/couchbase/operations/management/collection_drop.cxx +0 -73
  1962. data/ext/couchbase/couchbase/operations/management/collection_drop.hxx +0 -52
  1963. data/ext/couchbase/couchbase/operations/management/collections.hxx +0 -25
  1964. data/ext/couchbase/couchbase/operations/management/collections_manifest_get.cxx +0 -40
  1965. data/ext/couchbase/couchbase/operations/management/collections_manifest_get.hxx +0 -53
  1966. data/ext/couchbase/couchbase/operations/management/error_utils.cxx +0 -265
  1967. data/ext/couchbase/couchbase/operations/management/error_utils.hxx +0 -48
  1968. data/ext/couchbase/couchbase/operations/management/eventing.hxx +0 -28
  1969. data/ext/couchbase/couchbase/operations/management/eventing_deploy_function.cxx +0 -56
  1970. data/ext/couchbase/couchbase/operations/management/eventing_deploy_function.hxx +0 -52
  1971. data/ext/couchbase/couchbase/operations/management/eventing_drop_function.cxx +0 -57
  1972. data/ext/couchbase/couchbase/operations/management/eventing_drop_function.hxx +0 -52
  1973. data/ext/couchbase/couchbase/operations/management/eventing_get_all_functions.cxx +0 -64
  1974. data/ext/couchbase/couchbase/operations/management/eventing_get_all_functions.hxx +0 -51
  1975. data/ext/couchbase/couchbase/operations/management/eventing_get_function.cxx +0 -56
  1976. data/ext/couchbase/couchbase/operations/management/eventing_get_function.hxx +0 -53
  1977. data/ext/couchbase/couchbase/operations/management/eventing_get_status.cxx +0 -56
  1978. data/ext/couchbase/couchbase/operations/management/eventing_get_status.hxx +0 -53
  1979. data/ext/couchbase/couchbase/operations/management/eventing_pause_function.cxx +0 -56
  1980. data/ext/couchbase/couchbase/operations/management/eventing_pause_function.hxx +0 -52
  1981. data/ext/couchbase/couchbase/operations/management/eventing_problem.hxx +0 -31
  1982. data/ext/couchbase/couchbase/operations/management/eventing_resume_function.cxx +0 -56
  1983. data/ext/couchbase/couchbase/operations/management/eventing_resume_function.hxx +0 -52
  1984. data/ext/couchbase/couchbase/operations/management/eventing_undeploy_function.cxx +0 -56
  1985. data/ext/couchbase/couchbase/operations/management/eventing_undeploy_function.hxx +0 -52
  1986. data/ext/couchbase/couchbase/operations/management/eventing_upsert_function.cxx +0 -341
  1987. data/ext/couchbase/couchbase/operations/management/eventing_upsert_function.hxx +0 -52
  1988. data/ext/couchbase/couchbase/operations/management/freeform.cxx +0 -55
  1989. data/ext/couchbase/couchbase/operations/management/freeform.hxx +0 -55
  1990. data/ext/couchbase/couchbase/operations/management/group_drop.cxx +0 -51
  1991. data/ext/couchbase/couchbase/operations/management/group_drop.hxx +0 -49
  1992. data/ext/couchbase/couchbase/operations/management/group_get.cxx +0 -60
  1993. data/ext/couchbase/couchbase/operations/management/group_get.hxx +0 -50
  1994. data/ext/couchbase/couchbase/operations/management/group_get_all.cxx +0 -58
  1995. data/ext/couchbase/couchbase/operations/management/group_get_all.hxx +0 -49
  1996. data/ext/couchbase/couchbase/operations/management/group_upsert.cxx +0 -96
  1997. data/ext/couchbase/couchbase/operations/management/group_upsert.hxx +0 -51
  1998. data/ext/couchbase/couchbase/operations/management/query.hxx +0 -23
  1999. data/ext/couchbase/couchbase/operations/management/query_index_build_deferred.cxx +0 -88
  2000. data/ext/couchbase/couchbase/operations/management/query_index_build_deferred.hxx +0 -61
  2001. data/ext/couchbase/couchbase/operations/management/query_index_create.cxx +0 -149
  2002. data/ext/couchbase/couchbase/operations/management/query_index_create.hxx +0 -65
  2003. data/ext/couchbase/couchbase/operations/management/query_index_drop.cxx +0 -128
  2004. data/ext/couchbase/couchbase/operations/management/query_index_drop.hxx +0 -61
  2005. data/ext/couchbase/couchbase/operations/management/query_index_get_all.cxx +0 -126
  2006. data/ext/couchbase/couchbase/operations/management/query_index_get_all.hxx +0 -54
  2007. data/ext/couchbase/couchbase/operations/management/role_get_all.cxx +0 -58
  2008. data/ext/couchbase/couchbase/operations/management/role_get_all.hxx +0 -49
  2009. data/ext/couchbase/couchbase/operations/management/scope_create.cxx +0 -75
  2010. data/ext/couchbase/couchbase/operations/management/scope_create.hxx +0 -51
  2011. data/ext/couchbase/couchbase/operations/management/scope_drop.cxx +0 -70
  2012. data/ext/couchbase/couchbase/operations/management/scope_drop.hxx +0 -51
  2013. data/ext/couchbase/couchbase/operations/management/scope_get_all.cxx +0 -62
  2014. data/ext/couchbase/couchbase/operations/management/scope_get_all.hxx +0 -51
  2015. data/ext/couchbase/couchbase/operations/management/search.hxx +0 -30
  2016. data/ext/couchbase/couchbase/operations/management/search_get_stats.cxx +0 -41
  2017. data/ext/couchbase/couchbase/operations/management/search_get_stats.hxx +0 -48
  2018. data/ext/couchbase/couchbase/operations/management/search_index_analyze_document.cxx +0 -85
  2019. data/ext/couchbase/couchbase/operations/management/search_index_analyze_document.hxx +0 -54
  2020. data/ext/couchbase/couchbase/operations/management/search_index_control_ingest.cxx +0 -73
  2021. data/ext/couchbase/couchbase/operations/management/search_index_control_ingest.hxx +0 -52
  2022. data/ext/couchbase/couchbase/operations/management/search_index_control_plan_freeze.cxx +0 -73
  2023. data/ext/couchbase/couchbase/operations/management/search_index_control_plan_freeze.hxx +0 -57
  2024. data/ext/couchbase/couchbase/operations/management/search_index_control_query.cxx +0 -73
  2025. data/ext/couchbase/couchbase/operations/management/search_index_control_query.hxx +0 -52
  2026. data/ext/couchbase/couchbase/operations/management/search_index_drop.cxx +0 -72
  2027. data/ext/couchbase/couchbase/operations/management/search_index_drop.hxx +0 -51
  2028. data/ext/couchbase/couchbase/operations/management/search_index_get.cxx +0 -75
  2029. data/ext/couchbase/couchbase/operations/management/search_index_get.hxx +0 -54
  2030. data/ext/couchbase/couchbase/operations/management/search_index_get_all.cxx +0 -67
  2031. data/ext/couchbase/couchbase/operations/management/search_index_get_all.hxx +0 -51
  2032. data/ext/couchbase/couchbase/operations/management/search_index_get_documents_count.cxx +0 -79
  2033. data/ext/couchbase/couchbase/operations/management/search_index_get_documents_count.hxx +0 -53
  2034. data/ext/couchbase/couchbase/operations/management/search_index_get_stats.cxx +0 -71
  2035. data/ext/couchbase/couchbase/operations/management/search_index_get_stats.hxx +0 -52
  2036. data/ext/couchbase/couchbase/operations/management/search_index_upsert.cxx +0 -108
  2037. data/ext/couchbase/couchbase/operations/management/search_index_upsert.hxx +0 -52
  2038. data/ext/couchbase/couchbase/operations/management/user.hxx +0 -28
  2039. data/ext/couchbase/couchbase/operations/management/user_drop.cxx +0 -52
  2040. data/ext/couchbase/couchbase/operations/management/user_drop.hxx +0 -51
  2041. data/ext/couchbase/couchbase/operations/management/user_get.cxx +0 -61
  2042. data/ext/couchbase/couchbase/operations/management/user_get.hxx +0 -52
  2043. data/ext/couchbase/couchbase/operations/management/user_get_all.cxx +0 -59
  2044. data/ext/couchbase/couchbase/operations/management/user_get_all.hxx +0 -51
  2045. data/ext/couchbase/couchbase/operations/management/user_upsert.cxx +0 -101
  2046. data/ext/couchbase/couchbase/operations/management/user_upsert.hxx +0 -52
  2047. data/ext/couchbase/couchbase/operations/management/view.hxx +0 -23
  2048. data/ext/couchbase/couchbase/operations/management/view_index_drop.cxx +0 -46
  2049. data/ext/couchbase/couchbase/operations/management/view_index_drop.hxx +0 -52
  2050. data/ext/couchbase/couchbase/operations/management/view_index_get.cxx +0 -74
  2051. data/ext/couchbase/couchbase/operations/management/view_index_get.hxx +0 -53
  2052. data/ext/couchbase/couchbase/operations/management/view_index_get_all.cxx +0 -108
  2053. data/ext/couchbase/couchbase/operations/management/view_index_get_all.hxx +0 -52
  2054. data/ext/couchbase/couchbase/operations/management/view_index_upsert.cxx +0 -71
  2055. data/ext/couchbase/couchbase/operations/management/view_index_upsert.hxx +0 -51
  2056. data/ext/couchbase/couchbase/operations/mcbp_noop.cxx +0 -38
  2057. data/ext/couchbase/couchbase/operations/mcbp_noop.hxx +0 -49
  2058. data/ext/couchbase/couchbase/operations.hxx +0 -42
  2059. data/ext/couchbase/couchbase/origin.hxx +0 -185
  2060. data/ext/couchbase/couchbase/platform/CMakeLists.txt +0 -16
  2061. data/ext/couchbase/couchbase/platform/backtrace.c +0 -189
  2062. data/ext/couchbase/couchbase/platform/base64.cc +0 -234
  2063. data/ext/couchbase/couchbase/platform/base64.h +0 -44
  2064. data/ext/couchbase/couchbase/platform/dirutils.cc +0 -123
  2065. data/ext/couchbase/couchbase/platform/dirutils.h +0 -43
  2066. data/ext/couchbase/couchbase/platform/random.cc +0 -120
  2067. data/ext/couchbase/couchbase/platform/random.h +0 -39
  2068. data/ext/couchbase/couchbase/platform/string_hex.cc +0 -99
  2069. data/ext/couchbase/couchbase/platform/string_hex.h +0 -50
  2070. data/ext/couchbase/couchbase/platform/terminate_handler.cc +0 -125
  2071. data/ext/couchbase/couchbase/platform/terminate_handler.h +0 -36
  2072. data/ext/couchbase/couchbase/platform/uuid.cc +0 -98
  2073. data/ext/couchbase/couchbase/platform/uuid.h +0 -56
  2074. data/ext/couchbase/couchbase/protocol/CMakeLists.txt +0 -42
  2075. data/ext/couchbase/couchbase/protocol/client_opcode.hxx +0 -359
  2076. data/ext/couchbase/couchbase/protocol/client_opcode_fmt.hxx +0 -316
  2077. data/ext/couchbase/couchbase/protocol/client_request.cxx +0 -37
  2078. data/ext/couchbase/couchbase/protocol/client_request.hxx +0 -157
  2079. data/ext/couchbase/couchbase/protocol/client_response.cxx +0 -74
  2080. data/ext/couchbase/couchbase/protocol/client_response.hxx +0 -211
  2081. data/ext/couchbase/couchbase/protocol/cmd_append.cxx +0 -82
  2082. data/ext/couchbase/couchbase/protocol/cmd_append.hxx +0 -107
  2083. data/ext/couchbase/couchbase/protocol/cmd_cluster_map_change_notification.cxx +0 -51
  2084. data/ext/couchbase/couchbase/protocol/cmd_cluster_map_change_notification.hxx +0 -57
  2085. data/ext/couchbase/couchbase/protocol/cmd_decrement.cxx +0 -112
  2086. data/ext/couchbase/couchbase/protocol/cmd_decrement.hxx +0 -131
  2087. data/ext/couchbase/couchbase/protocol/cmd_exists.cxx +0 -92
  2088. data/ext/couchbase/couchbase/protocol/cmd_exists.hxx +0 -121
  2089. data/ext/couchbase/couchbase/protocol/cmd_get.cxx +0 -63
  2090. data/ext/couchbase/couchbase/protocol/cmd_get.hxx +0 -101
  2091. data/ext/couchbase/couchbase/protocol/cmd_get_and_lock.cxx +0 -68
  2092. data/ext/couchbase/couchbase/protocol/cmd_get_and_lock.hxx +0 -117
  2093. data/ext/couchbase/couchbase/protocol/cmd_get_and_touch.cxx +0 -70
  2094. data/ext/couchbase/couchbase/protocol/cmd_get_and_touch.hxx +0 -117
  2095. data/ext/couchbase/couchbase/protocol/cmd_get_cluster_config.cxx +0 -84
  2096. data/ext/couchbase/couchbase/protocol/cmd_get_cluster_config.hxx +0 -89
  2097. data/ext/couchbase/couchbase/protocol/cmd_get_collection_id.cxx +0 -50
  2098. data/ext/couchbase/couchbase/protocol/cmd_get_collection_id.hxx +0 -98
  2099. data/ext/couchbase/couchbase/protocol/cmd_get_collections_manifest.cxx +0 -44
  2100. data/ext/couchbase/couchbase/protocol/cmd_get_collections_manifest.hxx +0 -84
  2101. data/ext/couchbase/couchbase/protocol/cmd_get_error_map.cxx +0 -59
  2102. data/ext/couchbase/couchbase/protocol/cmd_get_error_map.hxx +0 -103
  2103. data/ext/couchbase/couchbase/protocol/cmd_get_meta.cxx +0 -74
  2104. data/ext/couchbase/couchbase/protocol/cmd_get_meta.hxx +0 -119
  2105. data/ext/couchbase/couchbase/protocol/cmd_hello.cxx +0 -66
  2106. data/ext/couchbase/couchbase/protocol/cmd_hello.hxx +0 -144
  2107. data/ext/couchbase/couchbase/protocol/cmd_increment.cxx +0 -117
  2108. data/ext/couchbase/couchbase/protocol/cmd_increment.hxx +0 -131
  2109. data/ext/couchbase/couchbase/protocol/cmd_info.hxx +0 -29
  2110. data/ext/couchbase/couchbase/protocol/cmd_insert.cxx +0 -92
  2111. data/ext/couchbase/couchbase/protocol/cmd_insert.hxx +0 -123
  2112. data/ext/couchbase/couchbase/protocol/cmd_lookup_in.cxx +0 -109
  2113. data/ext/couchbase/couchbase/protocol/cmd_lookup_in.hxx +0 -165
  2114. data/ext/couchbase/couchbase/protocol/cmd_mutate_in.cxx +0 -174
  2115. data/ext/couchbase/couchbase/protocol/cmd_mutate_in.hxx +0 -311
  2116. data/ext/couchbase/couchbase/protocol/cmd_noop.cxx +0 -36
  2117. data/ext/couchbase/couchbase/protocol/cmd_noop.hxx +0 -75
  2118. data/ext/couchbase/couchbase/protocol/cmd_prepend.cxx +0 -82
  2119. data/ext/couchbase/couchbase/protocol/cmd_prepend.hxx +0 -102
  2120. data/ext/couchbase/couchbase/protocol/cmd_remove.cxx +0 -83
  2121. data/ext/couchbase/couchbase/protocol/cmd_remove.hxx +0 -93
  2122. data/ext/couchbase/couchbase/protocol/cmd_replace.cxx +0 -105
  2123. data/ext/couchbase/couchbase/protocol/cmd_replace.hxx +0 -130
  2124. data/ext/couchbase/couchbase/protocol/cmd_sasl_auth.cxx +0 -40
  2125. data/ext/couchbase/couchbase/protocol/cmd_sasl_auth.hxx +0 -97
  2126. data/ext/couchbase/couchbase/protocol/cmd_sasl_list_mechs.cxx +0 -48
  2127. data/ext/couchbase/couchbase/protocol/cmd_sasl_list_mechs.hxx +0 -82
  2128. data/ext/couchbase/couchbase/protocol/cmd_sasl_step.cxx +0 -40
  2129. data/ext/couchbase/couchbase/protocol/cmd_sasl_step.hxx +0 -97
  2130. data/ext/couchbase/couchbase/protocol/cmd_select_bucket.cxx +0 -36
  2131. data/ext/couchbase/couchbase/protocol/cmd_select_bucket.hxx +0 -82
  2132. data/ext/couchbase/couchbase/protocol/cmd_touch.cxx +0 -57
  2133. data/ext/couchbase/couchbase/protocol/cmd_touch.hxx +0 -84
  2134. data/ext/couchbase/couchbase/protocol/cmd_unlock.cxx +0 -48
  2135. data/ext/couchbase/couchbase/protocol/cmd_unlock.hxx +0 -81
  2136. data/ext/couchbase/couchbase/protocol/cmd_upsert.cxx +0 -104
  2137. data/ext/couchbase/couchbase/protocol/cmd_upsert.hxx +0 -125
  2138. data/ext/couchbase/couchbase/protocol/datatype.hxx +0 -48
  2139. data/ext/couchbase/couchbase/protocol/durability_level.hxx +0 -59
  2140. data/ext/couchbase/couchbase/protocol/durability_level_fmt.hxx +0 -52
  2141. data/ext/couchbase/couchbase/protocol/enhanced_error_info.hxx +0 -28
  2142. data/ext/couchbase/couchbase/protocol/enhanced_error_info_fmt.hxx +0 -44
  2143. data/ext/couchbase/couchbase/protocol/frame_info_id.hxx +0 -142
  2144. data/ext/couchbase/couchbase/protocol/frame_info_id_fmt.hxx +0 -79
  2145. data/ext/couchbase/couchbase/protocol/hello_feature.hxx +0 -186
  2146. data/ext/couchbase/couchbase/protocol/hello_feature_fmt.hxx +0 -106
  2147. data/ext/couchbase/couchbase/protocol/magic.hxx +0 -53
  2148. data/ext/couchbase/couchbase/protocol/magic_fmt.hxx +0 -58
  2149. data/ext/couchbase/couchbase/protocol/server_opcode.hxx +0 -39
  2150. data/ext/couchbase/couchbase/protocol/server_opcode_fmt.hxx +0 -46
  2151. data/ext/couchbase/couchbase/protocol/server_request.hxx +0 -121
  2152. data/ext/couchbase/couchbase/protocol/status.cxx +0 -187
  2153. data/ext/couchbase/couchbase/protocol/status.hxx +0 -180
  2154. data/ext/couchbase/couchbase/protocol/status_fmt.hxx +0 -241
  2155. data/ext/couchbase/couchbase/query_profile_mode.hxx +0 -27
  2156. data/ext/couchbase/couchbase/sasl/CMakeLists.txt +0 -16
  2157. data/ext/couchbase/couchbase/sasl/client.cc +0 -50
  2158. data/ext/couchbase/couchbase/sasl/client.h +0 -128
  2159. data/ext/couchbase/couchbase/sasl/context.cc +0 -34
  2160. data/ext/couchbase/couchbase/sasl/context.h +0 -52
  2161. data/ext/couchbase/couchbase/sasl/error.h +0 -28
  2162. data/ext/couchbase/couchbase/sasl/error_fmt.h +0 -70
  2163. data/ext/couchbase/couchbase/sasl/mechanism.cc +0 -45
  2164. data/ext/couchbase/couchbase/sasl/mechanism.h +0 -52
  2165. data/ext/couchbase/couchbase/sasl/plain/plain.cc +0 -39
  2166. data/ext/couchbase/couchbase/sasl/plain/plain.h +0 -54
  2167. data/ext/couchbase/couchbase/sasl/scram-sha/scram-sha.cc +0 -372
  2168. data/ext/couchbase/couchbase/sasl/scram-sha/scram-sha.h +0 -184
  2169. data/ext/couchbase/couchbase/sasl/scram-sha/stringutils.cc +0 -82
  2170. data/ext/couchbase/couchbase/sasl/scram-sha/stringutils.h +0 -48
  2171. data/ext/couchbase/couchbase/search_highlight_style.hxx +0 -23
  2172. data/ext/couchbase/couchbase/search_scan_consistency.hxx +0 -23
  2173. data/ext/couchbase/couchbase/service_type.hxx +0 -31
  2174. data/ext/couchbase/couchbase/service_type_fmt.hxx +0 -61
  2175. data/ext/couchbase/couchbase/timeout_defaults.hxx +0 -42
  2176. data/ext/couchbase/couchbase/topology/CMakeLists.txt +0 -9
  2177. data/ext/couchbase/couchbase/topology/capabilities.hxx +0 -43
  2178. data/ext/couchbase/couchbase/topology/capabilities_fmt.hxx +0 -106
  2179. data/ext/couchbase/couchbase/topology/collections_manifest.hxx +0 -42
  2180. data/ext/couchbase/couchbase/topology/collections_manifest_fmt.hxx +0 -52
  2181. data/ext/couchbase/couchbase/topology/collections_manifest_json.hxx +0 -50
  2182. data/ext/couchbase/couchbase/topology/configuration.cxx +0 -223
  2183. data/ext/couchbase/couchbase/topology/configuration.hxx +0 -120
  2184. data/ext/couchbase/couchbase/topology/configuration_fmt.hxx +0 -166
  2185. data/ext/couchbase/couchbase/topology/configuration_json.hxx +0 -259
  2186. data/ext/couchbase/couchbase/topology/error_map.hxx +0 -149
  2187. data/ext/couchbase/couchbase/topology/error_map_fmt.hxx +0 -94
  2188. data/ext/couchbase/couchbase/topology/error_map_json.hxx +0 -88
  2189. data/ext/couchbase/couchbase/tracing/CMakeLists.txt +0 -9
  2190. data/ext/couchbase/couchbase/tracing/constants.hxx +0 -274
  2191. data/ext/couchbase/couchbase/tracing/noop_tracer.hxx +0 -55
  2192. data/ext/couchbase/couchbase/tracing/threshold_logging_options.hxx +0 -68
  2193. data/ext/couchbase/couchbase/tracing/threshold_logging_tracer.cxx +0 -422
  2194. data/ext/couchbase/couchbase/tracing/threshold_logging_tracer.hxx +0 -49
  2195. data/ext/couchbase/couchbase/utils/CMakeLists.txt +0 -17
  2196. data/ext/couchbase/couchbase/utils/byteswap.cxx +0 -45
  2197. data/ext/couchbase/couchbase/utils/byteswap.hxx +0 -49
  2198. data/ext/couchbase/couchbase/utils/connection_string.cxx +0 -420
  2199. data/ext/couchbase/couchbase/utils/connection_string.hxx +0 -76
  2200. data/ext/couchbase/couchbase/utils/crc32.hxx +0 -48
  2201. data/ext/couchbase/couchbase/utils/duration_parser.cxx +0 -193
  2202. data/ext/couchbase/couchbase/utils/duration_parser.hxx +0 -45
  2203. data/ext/couchbase/couchbase/utils/join_strings.hxx +0 -65
  2204. data/ext/couchbase/couchbase/utils/json.cxx +0 -71
  2205. data/ext/couchbase/couchbase/utils/json.hxx +0 -37
  2206. data/ext/couchbase/couchbase/utils/json_stream_control.hxx +0 -32
  2207. data/ext/couchbase/couchbase/utils/json_streaming_lexer.cxx +0 -394
  2208. data/ext/couchbase/couchbase/utils/json_streaming_lexer.hxx +0 -58
  2209. data/ext/couchbase/couchbase/utils/movable_function.hxx +0 -110
  2210. data/ext/couchbase/couchbase/utils/name_codec.hxx +0 -41
  2211. data/ext/couchbase/couchbase/utils/unsigned_leb128.hxx +0 -181
  2212. data/ext/couchbase/couchbase/utils/url_codec.cxx +0 -404
  2213. data/ext/couchbase/couchbase/utils/url_codec.hxx +0 -72
  2214. data/ext/couchbase/couchbase/view_scan_consistency.hxx +0 -27
  2215. data/ext/couchbase/couchbase/view_sort_order.hxx +0 -23
  2216. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/impl/append.hpp +0 -217
  2217. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/impl/as_tuple.hpp +0 -246
  2218. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/impl/deferred.hpp +0 -104
  2219. data/ext/couchbase/third_party/asio/asio/include/asio/experimental/impl/prepend.hpp +0 -217
  2220. data/ext/couchbase/third_party/asio/asio/include/asio/impl/compose.hpp +0 -707
  2221. data/ext/couchbase/third_party/json/external/PEGTL/include/tao/pegtl/internal/dependent_true.hpp +0 -16
@@ -2,7 +2,7 @@
2
2
  // basic_socket_iostream.hpp
3
3
  // ~~~~~~~~~~~~~~~~~~~~~~~~~
4
4
  //
5
- // Copyright (c) 2003-2021 Christopher M. Kohlhoff (chris at kohlhoff dot com)
5
+ // Copyright (c) 2003-2022 Christopher M. Kohlhoff (chris at kohlhoff dot com)
6
6
  //
7
7
  // Distributed under the Boost Software License, Version 1.0. (See accompanying
8
8
  // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -2,7 +2,7 @@
2
2
  // basic_socket_streambuf.hpp
3
3
  // ~~~~~~~~~~~~~~~~~~~~~~~~~~
4
4
  //
5
- // Copyright (c) 2003-2021 Christopher M. Kohlhoff (chris at kohlhoff dot com)
5
+ // Copyright (c) 2003-2022 Christopher M. Kohlhoff (chris at kohlhoff dot com)
6
6
  //
7
7
  // Distributed under the Boost Software License, Version 1.0. (See accompanying
8
8
  // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -2,7 +2,7 @@
2
2
  // basic_stream_file.hpp
3
3
  // ~~~~~~~~~~~~~~~~~~~~~
4
4
  //
5
- // Copyright (c) 2003-2021 Christopher M. Kohlhoff (chris at kohlhoff dot com)
5
+ // Copyright (c) 2003-2022 Christopher M. Kohlhoff (chris at kohlhoff dot com)
6
6
  //
7
7
  // Distributed under the Boost Software License, Version 1.0. (See accompanying
8
8
  // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -57,6 +57,10 @@ template <typename Executor>
57
57
  class basic_stream_file
58
58
  : public basic_file<Executor>
59
59
  {
60
+ private:
61
+ class initiate_async_write_some;
62
+ class initiate_async_read_some;
63
+
60
64
  public:
61
65
  /// The type of the executor associated with the object.
62
66
  typedef Executor executor_type;
@@ -468,25 +472,31 @@ public:
468
472
  /// Start an asynchronous write.
469
473
  /**
470
474
  * This function is used to asynchronously write data to the stream file.
471
- * The function call always returns immediately.
475
+ * It is an initiating function for an @ref asynchronous_operation, and always
476
+ * returns immediately.
472
477
  *
473
478
  * @param buffers One or more data buffers to be written to the file.
474
479
  * Although the buffers object may be copied as necessary, ownership of the
475
480
  * underlying memory blocks is retained by the caller, which must guarantee
476
- * that they remain valid until the handler is called.
481
+ * that they remain valid until the completion handler is called.
477
482
  *
478
- * @param handler The handler to be called when the write operation completes.
479
- * Copies will be made of the handler as required. The function signature of
480
- * the handler must be:
483
+ * @param token The @ref completion_token that will be used to produce a
484
+ * completion handler, which will be called when the write completes.
485
+ * Potential completion tokens include @ref use_future, @ref use_awaitable,
486
+ * @ref yield_context, or a function object with the correct completion
487
+ * signature. The function signature of the completion handler must be:
481
488
  * @code void handler(
482
489
  * const asio::error_code& error, // Result of operation.
483
- * std::size_t bytes_transferred // Number of bytes written.
490
+ * std::size_t bytes_transferred // Number of bytes written.
484
491
  * ); @endcode
485
492
  * Regardless of whether the asynchronous operation completes immediately or
486
- * not, the handler will not be invoked from within this function. On
487
- * immediate completion, invocation of the handler will be performed in a
493
+ * not, the completion handler will not be invoked from within this function.
494
+ * On immediate completion, invocation of the handler will be performed in a
488
495
  * manner equivalent to using asio::post().
489
496
  *
497
+ * @par Completion Signature
498
+ * @code void(asio::error_code, std::size_t) @endcode
499
+ *
490
500
  * @note The write operation may not transmit all of the data to the peer.
491
501
  * Consider using the @ref async_write function if you need to ensure that all
492
502
  * data is written before the asynchronous operation completes.
@@ -512,17 +522,21 @@ public:
512
522
  */
513
523
  template <typename ConstBufferSequence,
514
524
  ASIO_COMPLETION_TOKEN_FOR(void (asio::error_code,
515
- std::size_t)) WriteHandler
525
+ std::size_t)) WriteToken
516
526
  ASIO_DEFAULT_COMPLETION_TOKEN_TYPE(executor_type)>
517
- ASIO_INITFN_AUTO_RESULT_TYPE(WriteHandler,
527
+ ASIO_INITFN_AUTO_RESULT_TYPE_PREFIX(WriteToken,
518
528
  void (asio::error_code, std::size_t))
519
529
  async_write_some(const ConstBufferSequence& buffers,
520
- ASIO_MOVE_ARG(WriteHandler) handler
530
+ ASIO_MOVE_ARG(WriteToken) token
521
531
  ASIO_DEFAULT_COMPLETION_TOKEN(executor_type))
532
+ ASIO_INITFN_AUTO_RESULT_TYPE_SUFFIX((
533
+ async_initiate<WriteToken,
534
+ void (asio::error_code, std::size_t)>(
535
+ declval<initiate_async_write_some>(), token, buffers)))
522
536
  {
523
- return async_initiate<WriteHandler,
537
+ return async_initiate<WriteToken,
524
538
  void (asio::error_code, std::size_t)>(
525
- initiate_async_write_some(this), handler, buffers);
539
+ initiate_async_write_some(this), token, buffers);
526
540
  }
527
541
 
528
542
  /// Read some data from the file.
@@ -590,25 +604,31 @@ public:
590
604
  /// Start an asynchronous read.
591
605
  /**
592
606
  * This function is used to asynchronously read data from the stream file.
593
- * The function call always returns immediately.
607
+ * It is an initiating function for an @ref asynchronous_operation, and always
608
+ * returns immediately.
594
609
  *
595
610
  * @param buffers One or more buffers into which the data will be read.
596
611
  * Although the buffers object may be copied as necessary, ownership of the
597
612
  * underlying memory blocks is retained by the caller, which must guarantee
598
- * that they remain valid until the handler is called.
613
+ * that they remain valid until the completion handler is called.
599
614
  *
600
- * @param handler The handler to be called when the read operation completes.
601
- * Copies will be made of the handler as required. The function signature of
602
- * the handler must be:
615
+ * @param token The @ref completion_token that will be used to produce a
616
+ * completion handler, which will be called when the read completes.
617
+ * Potential completion tokens include @ref use_future, @ref use_awaitable,
618
+ * @ref yield_context, or a function object with the correct completion
619
+ * signature. The function signature of the completion handler must be:
603
620
  * @code void handler(
604
621
  * const asio::error_code& error, // Result of operation.
605
- * std::size_t bytes_transferred // Number of bytes read.
622
+ * std::size_t bytes_transferred // Number of bytes read.
606
623
  * ); @endcode
607
624
  * Regardless of whether the asynchronous operation completes immediately or
608
- * not, the handler will not be invoked from within this function. On
609
- * immediate completion, invocation of the handler will be performed in a
625
+ * not, the completion handler will not be invoked from within this function.
626
+ * On immediate completion, invocation of the handler will be performed in a
610
627
  * manner equivalent to using asio::post().
611
628
  *
629
+ * @par Completion Signature
630
+ * @code void(asio::error_code, std::size_t) @endcode
631
+ *
612
632
  * @note The read operation may not read all of the requested number of bytes.
613
633
  * Consider using the @ref async_read function if you need to ensure that the
614
634
  * requested amount of data is read before the asynchronous operation
@@ -635,17 +655,21 @@ public:
635
655
  */
636
656
  template <typename MutableBufferSequence,
637
657
  ASIO_COMPLETION_TOKEN_FOR(void (asio::error_code,
638
- std::size_t)) ReadHandler
658
+ std::size_t)) ReadToken
639
659
  ASIO_DEFAULT_COMPLETION_TOKEN_TYPE(executor_type)>
640
- ASIO_INITFN_AUTO_RESULT_TYPE(ReadHandler,
660
+ ASIO_INITFN_AUTO_RESULT_TYPE_PREFIX(ReadToken,
641
661
  void (asio::error_code, std::size_t))
642
662
  async_read_some(const MutableBufferSequence& buffers,
643
- ASIO_MOVE_ARG(ReadHandler) handler
663
+ ASIO_MOVE_ARG(ReadToken) token
644
664
  ASIO_DEFAULT_COMPLETION_TOKEN(executor_type))
665
+ ASIO_INITFN_AUTO_RESULT_TYPE_SUFFIX((
666
+ async_initiate<ReadToken,
667
+ void (asio::error_code, std::size_t)>(
668
+ declval<initiate_async_read_some>(), token, buffers)))
645
669
  {
646
- return async_initiate<ReadHandler,
670
+ return async_initiate<ReadToken,
647
671
  void (asio::error_code, std::size_t)>(
648
- initiate_async_read_some(this), handler, buffers);
672
+ initiate_async_read_some(this), token, buffers);
649
673
  }
650
674
 
651
675
  private:
@@ -2,7 +2,7 @@
2
2
  // basic_stream_socket.hpp
3
3
  // ~~~~~~~~~~~~~~~~~~~~~~~
4
4
  //
5
- // Copyright (c) 2003-2021 Christopher M. Kohlhoff (chris at kohlhoff dot com)
5
+ // Copyright (c) 2003-2022 Christopher M. Kohlhoff (chris at kohlhoff dot com)
6
6
  //
7
7
  // Distributed under the Boost Software License, Version 1.0. (See accompanying
8
8
  // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -46,11 +46,12 @@ class basic_stream_socket;
46
46
  * @e Distinct @e objects: Safe.@n
47
47
  * @e Shared @e objects: Unsafe.
48
48
  *
49
- * Synchronous @c send, @c receive, and @c connect operations are thread safe
50
- * with respect to each other, if the underlying operating system calls are
51
- * also thread safe. This means that it is permitted to perform concurrent
52
- * calls to these synchronous operations on a single socket object. Other
53
- * synchronous operations, such as @c open or @c close, are not thread safe.
49
+ * Synchronous @c send, @c receive, @c connect, and @c shutdown operations are
50
+ * thread safe with respect to each other, if the underlying operating system
51
+ * calls are also thread safe. This means that it is permitted to perform
52
+ * concurrent calls to these synchronous operations on a single socket object.
53
+ * Other synchronous operations, such as @c open or @c close, are not thread
54
+ * safe.
54
55
  *
55
56
  * @par Concepts:
56
57
  * AsyncReadStream, AsyncWriteStream, Stream, SyncReadStream, SyncWriteStream.
@@ -59,6 +60,10 @@ template <typename Protocol, typename Executor>
59
60
  class basic_stream_socket
60
61
  : public basic_socket<Protocol, Executor>
61
62
  {
63
+ private:
64
+ class initiate_async_send;
65
+ class initiate_async_receive;
66
+
62
67
  public:
63
68
  /// The type of the executor associated with the object.
64
69
  typedef Executor executor_type;
@@ -438,25 +443,31 @@ public:
438
443
  /// Start an asynchronous send.
439
444
  /**
440
445
  * This function is used to asynchronously send data on the stream socket.
441
- * The function call always returns immediately.
446
+ * It is an initiating function for an @ref asynchronous_operation, and always
447
+ * returns immediately.
442
448
  *
443
449
  * @param buffers One or more data buffers to be sent on the socket. Although
444
450
  * the buffers object may be copied as necessary, ownership of the underlying
445
451
  * memory blocks is retained by the caller, which must guarantee that they
446
- * remain valid until the handler is called.
452
+ * remain valid until the completion handler is called.
447
453
  *
448
- * @param handler The handler to be called when the send operation completes.
449
- * Copies will be made of the handler as required. The function signature of
450
- * the handler must be:
454
+ * @param token The @ref completion_token that will be used to produce a
455
+ * completion handler, which will be called when the send completes.
456
+ * Potential completion tokens include @ref use_future, @ref use_awaitable,
457
+ * @ref yield_context, or a function object with the correct completion
458
+ * signature. The function signature of the completion handler must be:
451
459
  * @code void handler(
452
460
  * const asio::error_code& error, // Result of operation.
453
- * std::size_t bytes_transferred // Number of bytes sent.
461
+ * std::size_t bytes_transferred // Number of bytes sent.
454
462
  * ); @endcode
455
463
  * Regardless of whether the asynchronous operation completes immediately or
456
- * not, the handler will not be invoked from within this function. On
457
- * immediate completion, invocation of the handler will be performed in a
464
+ * not, the completion handler will not be invoked from within this function.
465
+ * On immediate completion, invocation of the handler will be performed in a
458
466
  * manner equivalent to using asio::post().
459
467
  *
468
+ * @par Completion Signature
469
+ * @code void(asio::error_code, std::size_t) @endcode
470
+ *
460
471
  * @note The send operation may not transmit all of the data to the peer.
461
472
  * Consider using the @ref async_write function if you need to ensure that all
462
473
  * data is written before the asynchronous operation completes.
@@ -482,44 +493,55 @@ public:
482
493
  */
483
494
  template <typename ConstBufferSequence,
484
495
  ASIO_COMPLETION_TOKEN_FOR(void (asio::error_code,
485
- std::size_t)) WriteHandler
496
+ std::size_t)) WriteToken
486
497
  ASIO_DEFAULT_COMPLETION_TOKEN_TYPE(executor_type)>
487
- ASIO_INITFN_AUTO_RESULT_TYPE(WriteHandler,
498
+ ASIO_INITFN_AUTO_RESULT_TYPE_PREFIX(WriteToken,
488
499
  void (asio::error_code, std::size_t))
489
500
  async_send(const ConstBufferSequence& buffers,
490
- ASIO_MOVE_ARG(WriteHandler) handler
501
+ ASIO_MOVE_ARG(WriteToken) token
491
502
  ASIO_DEFAULT_COMPLETION_TOKEN(executor_type))
503
+ ASIO_INITFN_AUTO_RESULT_TYPE_SUFFIX((
504
+ async_initiate<WriteToken,
505
+ void (asio::error_code, std::size_t)>(
506
+ declval<initiate_async_send>(), token,
507
+ buffers, socket_base::message_flags(0))))
492
508
  {
493
- return async_initiate<WriteHandler,
509
+ return async_initiate<WriteToken,
494
510
  void (asio::error_code, std::size_t)>(
495
- initiate_async_send(this), handler,
511
+ initiate_async_send(this), token,
496
512
  buffers, socket_base::message_flags(0));
497
513
  }
498
514
 
499
515
  /// Start an asynchronous send.
500
516
  /**
501
517
  * This function is used to asynchronously send data on the stream socket.
502
- * The function call always returns immediately.
518
+ * It is an initiating function for an @ref asynchronous_operation, and always
519
+ * returns immediately.
503
520
  *
504
521
  * @param buffers One or more data buffers to be sent on the socket. Although
505
522
  * the buffers object may be copied as necessary, ownership of the underlying
506
523
  * memory blocks is retained by the caller, which must guarantee that they
507
- * remain valid until the handler is called.
524
+ * remain valid until the completion handler is called.
508
525
  *
509
526
  * @param flags Flags specifying how the send call is to be made.
510
527
  *
511
- * @param handler The handler to be called when the send operation completes.
512
- * Copies will be made of the handler as required. The function signature of
513
- * the handler must be:
528
+ * @param token The @ref completion_token that will be used to produce a
529
+ * completion handler, which will be called when the send completes.
530
+ * Potential completion tokens include @ref use_future, @ref use_awaitable,
531
+ * @ref yield_context, or a function object with the correct completion
532
+ * signature. The function signature of the completion handler must be:
514
533
  * @code void handler(
515
534
  * const asio::error_code& error, // Result of operation.
516
- * std::size_t bytes_transferred // Number of bytes sent.
535
+ * std::size_t bytes_transferred // Number of bytes sent.
517
536
  * ); @endcode
518
537
  * Regardless of whether the asynchronous operation completes immediately or
519
- * not, the handler will not be invoked from within this function. On
520
- * immediate completion, invocation of the handler will be performed in a
538
+ * not, the completion handler will not be invoked from within this function.
539
+ * On immediate completion, invocation of the handler will be performed in a
521
540
  * manner equivalent to using asio::post().
522
541
  *
542
+ * @par Completion Signature
543
+ * @code void(asio::error_code, std::size_t) @endcode
544
+ *
523
545
  * @note The send operation may not transmit all of the data to the peer.
524
546
  * Consider using the @ref async_write function if you need to ensure that all
525
547
  * data is written before the asynchronous operation completes.
@@ -545,18 +567,22 @@ public:
545
567
  */
546
568
  template <typename ConstBufferSequence,
547
569
  ASIO_COMPLETION_TOKEN_FOR(void (asio::error_code,
548
- std::size_t)) WriteHandler
570
+ std::size_t)) WriteToken
549
571
  ASIO_DEFAULT_COMPLETION_TOKEN_TYPE(executor_type)>
550
- ASIO_INITFN_AUTO_RESULT_TYPE(WriteHandler,
572
+ ASIO_INITFN_AUTO_RESULT_TYPE_PREFIX(WriteToken,
551
573
  void (asio::error_code, std::size_t))
552
574
  async_send(const ConstBufferSequence& buffers,
553
575
  socket_base::message_flags flags,
554
- ASIO_MOVE_ARG(WriteHandler) handler
576
+ ASIO_MOVE_ARG(WriteToken) token
555
577
  ASIO_DEFAULT_COMPLETION_TOKEN(executor_type))
578
+ ASIO_INITFN_AUTO_RESULT_TYPE_SUFFIX((
579
+ async_initiate<WriteToken,
580
+ void (asio::error_code, std::size_t)>(
581
+ declval<initiate_async_send>(), token, buffers, flags)))
556
582
  {
557
- return async_initiate<WriteHandler,
583
+ return async_initiate<WriteToken,
558
584
  void (asio::error_code, std::size_t)>(
559
- initiate_async_send(this), handler, buffers, flags);
585
+ initiate_async_send(this), token, buffers, flags);
560
586
  }
561
587
 
562
588
  /// Receive some data on the socket.
@@ -667,25 +693,31 @@ public:
667
693
  /// Start an asynchronous receive.
668
694
  /**
669
695
  * This function is used to asynchronously receive data from the stream
670
- * socket. The function call always returns immediately.
696
+ * socket. It is an initiating function for an @ref asynchronous_operation,
697
+ * and always returns immediately.
671
698
  *
672
699
  * @param buffers One or more buffers into which the data will be received.
673
700
  * Although the buffers object may be copied as necessary, ownership of the
674
701
  * underlying memory blocks is retained by the caller, which must guarantee
675
- * that they remain valid until the handler is called.
702
+ * that they remain valid until the completion handler is called.
676
703
  *
677
- * @param handler The handler to be called when the receive operation
678
- * completes. Copies will be made of the handler as required. The function
679
- * signature of the handler must be:
704
+ * @param token The @ref completion_token that will be used to produce a
705
+ * completion handler, which will be called when the receive completes.
706
+ * Potential completion tokens include @ref use_future, @ref use_awaitable,
707
+ * @ref yield_context, or a function object with the correct completion
708
+ * signature. The function signature of the completion handler must be:
680
709
  * @code void handler(
681
710
  * const asio::error_code& error, // Result of operation.
682
- * std::size_t bytes_transferred // Number of bytes received.
711
+ * std::size_t bytes_transferred // Number of bytes received.
683
712
  * ); @endcode
684
713
  * Regardless of whether the asynchronous operation completes immediately or
685
- * not, the handler will not be invoked from within this function. On
686
- * immediate completion, invocation of the handler will be performed in a
714
+ * not, the completion handler will not be invoked from within this function.
715
+ * On immediate completion, invocation of the handler will be performed in a
687
716
  * manner equivalent to using asio::post().
688
717
  *
718
+ * @par Completion Signature
719
+ * @code void(asio::error_code, std::size_t) @endcode
720
+ *
689
721
  * @note The receive operation may not receive all of the requested number of
690
722
  * bytes. Consider using the @ref async_read function if you need to ensure
691
723
  * that the requested amount of data is received before the asynchronous
@@ -713,44 +745,55 @@ public:
713
745
  */
714
746
  template <typename MutableBufferSequence,
715
747
  ASIO_COMPLETION_TOKEN_FOR(void (asio::error_code,
716
- std::size_t)) ReadHandler
748
+ std::size_t)) ReadToken
717
749
  ASIO_DEFAULT_COMPLETION_TOKEN_TYPE(executor_type)>
718
- ASIO_INITFN_AUTO_RESULT_TYPE(ReadHandler,
750
+ ASIO_INITFN_AUTO_RESULT_TYPE_PREFIX(ReadToken,
719
751
  void (asio::error_code, std::size_t))
720
752
  async_receive(const MutableBufferSequence& buffers,
721
- ASIO_MOVE_ARG(ReadHandler) handler
753
+ ASIO_MOVE_ARG(ReadToken) token
722
754
  ASIO_DEFAULT_COMPLETION_TOKEN(executor_type))
755
+ ASIO_INITFN_AUTO_RESULT_TYPE_SUFFIX((
756
+ async_initiate<ReadToken,
757
+ void (asio::error_code, std::size_t)>(
758
+ declval<initiate_async_receive>(), token,
759
+ buffers, socket_base::message_flags(0))))
723
760
  {
724
- return async_initiate<ReadHandler,
761
+ return async_initiate<ReadToken,
725
762
  void (asio::error_code, std::size_t)>(
726
- initiate_async_receive(this), handler,
763
+ initiate_async_receive(this), token,
727
764
  buffers, socket_base::message_flags(0));
728
765
  }
729
766
 
730
767
  /// Start an asynchronous receive.
731
768
  /**
732
769
  * This function is used to asynchronously receive data from the stream
733
- * socket. The function call always returns immediately.
770
+ * socket. It is an initiating function for an @ref asynchronous_operation,
771
+ * and always returns immediately.
734
772
  *
735
773
  * @param buffers One or more buffers into which the data will be received.
736
774
  * Although the buffers object may be copied as necessary, ownership of the
737
775
  * underlying memory blocks is retained by the caller, which must guarantee
738
- * that they remain valid until the handler is called.
776
+ * that they remain valid until the completion handler is called.
739
777
  *
740
778
  * @param flags Flags specifying how the receive call is to be made.
741
779
  *
742
- * @param handler The handler to be called when the receive operation
743
- * completes. Copies will be made of the handler as required. The function
744
- * signature of the handler must be:
780
+ * @param token The @ref completion_token that will be used to produce a
781
+ * completion handler, which will be called when the receive completes.
782
+ * Potential completion tokens include @ref use_future, @ref use_awaitable,
783
+ * @ref yield_context, or a function object with the correct completion
784
+ * signature. The function signature of the completion handler must be:
745
785
  * @code void handler(
746
786
  * const asio::error_code& error, // Result of operation.
747
- * std::size_t bytes_transferred // Number of bytes received.
787
+ * std::size_t bytes_transferred // Number of bytes received.
748
788
  * ); @endcode
749
789
  * Regardless of whether the asynchronous operation completes immediately or
750
- * not, the handler will not be invoked from within this function. On
751
- * immediate completion, invocation of the handler will be performed in a
790
+ * not, the completion handler will not be invoked from within this function.
791
+ * On immediate completion, invocation of the handler will be performed in a
752
792
  * manner equivalent to using asio::post().
753
793
  *
794
+ * @par Completion Signature
795
+ * @code void(asio::error_code, std::size_t) @endcode
796
+ *
754
797
  * @note The receive operation may not receive all of the requested number of
755
798
  * bytes. Consider using the @ref async_read function if you need to ensure
756
799
  * that the requested amount of data is received before the asynchronous
@@ -778,18 +821,22 @@ public:
778
821
  */
779
822
  template <typename MutableBufferSequence,
780
823
  ASIO_COMPLETION_TOKEN_FOR(void (asio::error_code,
781
- std::size_t)) ReadHandler
824
+ std::size_t)) ReadToken
782
825
  ASIO_DEFAULT_COMPLETION_TOKEN_TYPE(executor_type)>
783
- ASIO_INITFN_AUTO_RESULT_TYPE(ReadHandler,
826
+ ASIO_INITFN_AUTO_RESULT_TYPE_PREFIX(ReadToken,
784
827
  void (asio::error_code, std::size_t))
785
828
  async_receive(const MutableBufferSequence& buffers,
786
829
  socket_base::message_flags flags,
787
- ASIO_MOVE_ARG(ReadHandler) handler
830
+ ASIO_MOVE_ARG(ReadToken) token
788
831
  ASIO_DEFAULT_COMPLETION_TOKEN(executor_type))
832
+ ASIO_INITFN_AUTO_RESULT_TYPE_SUFFIX((
833
+ async_initiate<ReadToken,
834
+ void (asio::error_code, std::size_t)>(
835
+ declval<initiate_async_receive>(), token, buffers, flags)))
789
836
  {
790
- return async_initiate<ReadHandler,
837
+ return async_initiate<ReadToken,
791
838
  void (asio::error_code, std::size_t)>(
792
- initiate_async_receive(this), handler, buffers, flags);
839
+ initiate_async_receive(this), token, buffers, flags);
793
840
  }
794
841
 
795
842
  /// Write some data to the socket.
@@ -856,25 +903,31 @@ public:
856
903
  /// Start an asynchronous write.
857
904
  /**
858
905
  * This function is used to asynchronously write data to the stream socket.
859
- * The function call always returns immediately.
906
+ * It is an initiating function for an @ref asynchronous_operation, and always
907
+ * returns immediately.
860
908
  *
861
909
  * @param buffers One or more data buffers to be written to the socket.
862
910
  * Although the buffers object may be copied as necessary, ownership of the
863
911
  * underlying memory blocks is retained by the caller, which must guarantee
864
- * that they remain valid until the handler is called.
912
+ * that they remain valid until the completion handler is called.
865
913
  *
866
- * @param handler The handler to be called when the write operation completes.
867
- * Copies will be made of the handler as required. The function signature of
868
- * the handler must be:
914
+ * @param token The @ref completion_token that will be used to produce a
915
+ * completion handler, which will be called when the write completes.
916
+ * Potential completion tokens include @ref use_future, @ref use_awaitable,
917
+ * @ref yield_context, or a function object with the correct completion
918
+ * signature. The function signature of the completion handler must be:
869
919
  * @code void handler(
870
920
  * const asio::error_code& error, // Result of operation.
871
- * std::size_t bytes_transferred // Number of bytes written.
921
+ * std::size_t bytes_transferred // Number of bytes written.
872
922
  * ); @endcode
873
923
  * Regardless of whether the asynchronous operation completes immediately or
874
- * not, the handler will not be invoked from within this function. On
875
- * immediate completion, invocation of the handler will be performed in a
924
+ * not, the completion handler will not be invoked from within this function.
925
+ * On immediate completion, invocation of the handler will be performed in a
876
926
  * manner equivalent to using asio::post().
877
927
  *
928
+ * @par Completion Signature
929
+ * @code void(asio::error_code, std::size_t) @endcode
930
+ *
878
931
  * @note The write operation may not transmit all of the data to the peer.
879
932
  * Consider using the @ref async_write function if you need to ensure that all
880
933
  * data is written before the asynchronous operation completes.
@@ -900,17 +953,22 @@ public:
900
953
  */
901
954
  template <typename ConstBufferSequence,
902
955
  ASIO_COMPLETION_TOKEN_FOR(void (asio::error_code,
903
- std::size_t)) WriteHandler
956
+ std::size_t)) WriteToken
904
957
  ASIO_DEFAULT_COMPLETION_TOKEN_TYPE(executor_type)>
905
- ASIO_INITFN_AUTO_RESULT_TYPE(WriteHandler,
958
+ ASIO_INITFN_AUTO_RESULT_TYPE_PREFIX(WriteToken,
906
959
  void (asio::error_code, std::size_t))
907
960
  async_write_some(const ConstBufferSequence& buffers,
908
- ASIO_MOVE_ARG(WriteHandler) handler
961
+ ASIO_MOVE_ARG(WriteToken) token
909
962
  ASIO_DEFAULT_COMPLETION_TOKEN(executor_type))
963
+ ASIO_INITFN_AUTO_RESULT_TYPE_SUFFIX((
964
+ async_initiate<WriteToken,
965
+ void (asio::error_code, std::size_t)>(
966
+ declval<initiate_async_send>(), token,
967
+ buffers, socket_base::message_flags(0))))
910
968
  {
911
- return async_initiate<WriteHandler,
969
+ return async_initiate<WriteToken,
912
970
  void (asio::error_code, std::size_t)>(
913
- initiate_async_send(this), handler,
971
+ initiate_async_send(this), token,
914
972
  buffers, socket_base::message_flags(0));
915
973
  }
916
974
 
@@ -980,25 +1038,31 @@ public:
980
1038
  /// Start an asynchronous read.
981
1039
  /**
982
1040
  * This function is used to asynchronously read data from the stream socket.
983
- * The function call always returns immediately.
1041
+ * socket. It is an initiating function for an @ref asynchronous_operation,
1042
+ * and always returns immediately.
984
1043
  *
985
1044
  * @param buffers One or more buffers into which the data will be read.
986
1045
  * Although the buffers object may be copied as necessary, ownership of the
987
1046
  * underlying memory blocks is retained by the caller, which must guarantee
988
- * that they remain valid until the handler is called.
1047
+ * that they remain valid until the completion handler is called.
989
1048
  *
990
- * @param handler The handler to be called when the read operation completes.
991
- * Copies will be made of the handler as required. The function signature of
992
- * the handler must be:
1049
+ * @param token The @ref completion_token that will be used to produce a
1050
+ * completion handler, which will be called when the read completes.
1051
+ * Potential completion tokens include @ref use_future, @ref use_awaitable,
1052
+ * @ref yield_context, or a function object with the correct completion
1053
+ * signature. The function signature of the completion handler must be:
993
1054
  * @code void handler(
994
1055
  * const asio::error_code& error, // Result of operation.
995
- * std::size_t bytes_transferred // Number of bytes read.
1056
+ * std::size_t bytes_transferred // Number of bytes read.
996
1057
  * ); @endcode
997
1058
  * Regardless of whether the asynchronous operation completes immediately or
998
- * not, the handler will not be invoked from within this function. On
999
- * immediate completion, invocation of the handler will be performed in a
1059
+ * not, the completion handler will not be invoked from within this function.
1060
+ * On immediate completion, invocation of the handler will be performed in a
1000
1061
  * manner equivalent to using asio::post().
1001
1062
  *
1063
+ * @par Completion Signature
1064
+ * @code void(asio::error_code, std::size_t) @endcode
1065
+ *
1002
1066
  * @note The read operation may not read all of the requested number of bytes.
1003
1067
  * Consider using the @ref async_read function if you need to ensure that the
1004
1068
  * requested amount of data is read before the asynchronous operation
@@ -1025,17 +1089,22 @@ public:
1025
1089
  */
1026
1090
  template <typename MutableBufferSequence,
1027
1091
  ASIO_COMPLETION_TOKEN_FOR(void (asio::error_code,
1028
- std::size_t)) ReadHandler
1092
+ std::size_t)) ReadToken
1029
1093
  ASIO_DEFAULT_COMPLETION_TOKEN_TYPE(executor_type)>
1030
- ASIO_INITFN_AUTO_RESULT_TYPE(ReadHandler,
1094
+ ASIO_INITFN_AUTO_RESULT_TYPE_PREFIX(ReadToken,
1031
1095
  void (asio::error_code, std::size_t))
1032
1096
  async_read_some(const MutableBufferSequence& buffers,
1033
- ASIO_MOVE_ARG(ReadHandler) handler
1097
+ ASIO_MOVE_ARG(ReadToken) token
1034
1098
  ASIO_DEFAULT_COMPLETION_TOKEN(executor_type))
1099
+ ASIO_INITFN_AUTO_RESULT_TYPE_SUFFIX((
1100
+ async_initiate<ReadToken,
1101
+ void (asio::error_code, std::size_t)>(
1102
+ declval<initiate_async_receive>(), token,
1103
+ buffers, socket_base::message_flags(0))))
1035
1104
  {
1036
- return async_initiate<ReadHandler,
1105
+ return async_initiate<ReadToken,
1037
1106
  void (asio::error_code, std::size_t)>(
1038
- initiate_async_receive(this), handler,
1107
+ initiate_async_receive(this), token,
1039
1108
  buffers, socket_base::message_flags(0));
1040
1109
  }
1041
1110
 
@@ -2,7 +2,7 @@
2
2
  // basic_streambuf.hpp
3
3
  // ~~~~~~~~~~~~~~~~~~~
4
4
  //
5
- // Copyright (c) 2003-2021 Christopher M. Kohlhoff (chris at kohlhoff dot com)
5
+ // Copyright (c) 2003-2022 Christopher M. Kohlhoff (chris at kohlhoff dot com)
6
6
  //
7
7
  // Distributed under the Boost Software License, Version 1.0. (See accompanying
8
8
  // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -2,7 +2,7 @@
2
2
  // basic_streambuf_fwd.hpp
3
3
  // ~~~~~~~~~~~~~~~~~~~~~~~
4
4
  //
5
- // Copyright (c) 2003-2021 Christopher M. Kohlhoff (chris at kohlhoff dot com)
5
+ // Copyright (c) 2003-2022 Christopher M. Kohlhoff (chris at kohlhoff dot com)
6
6
  //
7
7
  // Distributed under the Boost Software License, Version 1.0. (See accompanying
8
8
  // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)