couchbase 3.3.0 → 3.4.1

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