diff --git a/libmongoc/1.23.3/init-cleanup.html b/libmongoc/1.23.3/init-cleanup.html
index f8322b423cc92d2a50d4bc4e705a3966bcd0267b..d844e614eed0a94bfb4cace01a7f65ff7bb0733e 100644
--- a/libmongoc/1.23.3/init-cleanup.html
+++ b/libmongoc/1.23.3/init-cleanup.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/installing.html b/libmongoc/1.23.3/installing.html
index 92d60f3999b15f86543c8dbd5076fb6c1f8e4206..89f917c41c4f4fd7cfb877a98f2608351dda9a98 100644
--- a/libmongoc/1.23.3/installing.html
+++ b/libmongoc/1.23.3/installing.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/lifecycle.html b/libmongoc/1.23.3/lifecycle.html
index 48a00a4c1678475d6fdc41532c896864c9f54e4f..5a8d21a3e71f587c766133215c943149b19d48d2 100644
--- a/libmongoc/1.23.3/lifecycle.html
+++ b/libmongoc/1.23.3/lifecycle.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/logging.html b/libmongoc/1.23.3/logging.html
index a211c695338fc388f7d05b29820d4af2f83fb15c..bcf3fd3382cfb8dccd011cbbb84dbdda7f37ef85 100644
--- a/libmongoc/1.23.3/logging.html
+++ b/libmongoc/1.23.3/logging.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/matcher.html b/libmongoc/1.23.3/matcher.html
index 76f75d60a459c9a2ee9fbb4f779f40cfb2ac04e5..ada68760702504b49904a36cdf86e1fc7a5a1333 100644
--- a/libmongoc/1.23.3/matcher.html
+++ b/libmongoc/1.23.3/matcher.html
@@ -36,6 +36,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc-common-task-examples.html b/libmongoc/1.23.3/mongoc-common-task-examples.html
index 5f3a4a0cca3e9ed87e09324bf60ce31a52f53261..80f743df46978a5bb6f16a92cc06722b801c880c 100644
--- a/libmongoc/1.23.3/mongoc-common-task-examples.html
+++ b/libmongoc/1.23.3/mongoc-common-task-examples.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_callbacks_destroy.html b/libmongoc/1.23.3/mongoc_apm_callbacks_destroy.html
index d304803f0908a0e9fbde39eecf4568f100e97f6d..72039ab43fe1252264413a6699557c5727867cea 100644
--- a/libmongoc/1.23.3/mongoc_apm_callbacks_destroy.html
+++ b/libmongoc/1.23.3/mongoc_apm_callbacks_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_callbacks_new.html b/libmongoc/1.23.3/mongoc_apm_callbacks_new.html
index a9e90571bd235b57035b372a44d6f13cf67d0016..27c1e516c4be2285649ef3f52a2213a16ccaaa1e 100644
--- a/libmongoc/1.23.3/mongoc_apm_callbacks_new.html
+++ b/libmongoc/1.23.3/mongoc_apm_callbacks_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_callbacks_t.html b/libmongoc/1.23.3/mongoc_apm_callbacks_t.html
index 66cff86788270cffe781b3db637da40484956d6e..31df56cf03f1aa6f967963390486b176959d8cdc 100644
--- a/libmongoc/1.23.3/mongoc_apm_callbacks_t.html
+++ b/libmongoc/1.23.3/mongoc_apm_callbacks_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_failed_get_command_name.html b/libmongoc/1.23.3/mongoc_apm_command_failed_get_command_name.html
index fad65acc5537b69334332e8ccad7d93ee6806fb2..88e8e43a16c2f0f054cf7518ef9336722cb9a422 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_failed_get_command_name.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_failed_get_command_name.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_failed_get_context.html b/libmongoc/1.23.3/mongoc_apm_command_failed_get_context.html
index 41a86a635fe544a31b7abe330f8c1fe2f4a6cda4..490ec2c04b7f21067b92dd26222e74d30704a71c 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_failed_get_context.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_failed_get_context.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_failed_get_duration.html b/libmongoc/1.23.3/mongoc_apm_command_failed_get_duration.html
index ebc973ebdeb93158ff4da41987f01a73991d0150..9cd0e4be4659ca410d7f6f4f7b7c59610e58b1e7 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_failed_get_duration.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_failed_get_duration.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_failed_get_error.html b/libmongoc/1.23.3/mongoc_apm_command_failed_get_error.html
index 0433b43e8dc150be8745fc7609ae9c83a9d2e96e..04289269226eef7ce6e3be7c2a3844a4f31c7f19 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_failed_get_error.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_failed_get_error.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_failed_get_host.html b/libmongoc/1.23.3/mongoc_apm_command_failed_get_host.html
index 658f05decf32a1fdc6c4bd76a88580a47a1ecd5d..2c043a1789121f65d332e8915854aca078b4fb8b 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_failed_get_host.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_failed_get_host.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_failed_get_operation_id.html b/libmongoc/1.23.3/mongoc_apm_command_failed_get_operation_id.html
index 9912e9fce32604244b617ed0e516dd7e3a064ba6..65e06d80bf67100351fec8dbe7dcca4ab85698a3 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_failed_get_operation_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_failed_get_operation_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_failed_get_reply.html b/libmongoc/1.23.3/mongoc_apm_command_failed_get_reply.html
index 20a3205e88447b3925110555e8baa5aac063a3f2..538958ec77fbcb44296cbce20228d04dfbab4457 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_failed_get_reply.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_failed_get_reply.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_failed_get_request_id.html b/libmongoc/1.23.3/mongoc_apm_command_failed_get_request_id.html
index 3e4d283e9954fc35a83dc9e100cef1d80739f6cb..19c35b3d18115563982a37ca0952e9fa1372bb6d 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_failed_get_request_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_failed_get_request_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_failed_get_server_connection_id.html b/libmongoc/1.23.3/mongoc_apm_command_failed_get_server_connection_id.html
index 4eb1fbc8c091b8649f9d9d5af649d45a41fe96b4..a2d85165b1abb76ead730d34a7fe9e0dbb0e2f7e 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_failed_get_server_connection_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_failed_get_server_connection_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_failed_get_server_id.html b/libmongoc/1.23.3/mongoc_apm_command_failed_get_server_id.html
index a8b843ecc41b71b8a8cf4f2d7a1228a72ce2d850..b046c45170d658c2b254db41475b2dc8c556e5ac 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_failed_get_server_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_failed_get_server_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_failed_get_service_id.html b/libmongoc/1.23.3/mongoc_apm_command_failed_get_service_id.html
index 93777585080dccac386e1d7c564cce465d187d96..7651d41c581eb6caf0d5c074b539cb8a3b2827ee 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_failed_get_service_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_failed_get_service_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_failed_t.html b/libmongoc/1.23.3/mongoc_apm_command_failed_t.html
index 4d818a3cc8d2652d6229e2e322d16f1fbcd205f8..5624b2bb0b0fd97d8bd7a1d3f77a1bdc5aadc5f0 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_failed_t.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_failed_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_started_get_command.html b/libmongoc/1.23.3/mongoc_apm_command_started_get_command.html
index 7337abbec524ffd014fe3a83190c6bd63febdbd1..4cde5e76caba7ff89666430cf0a41b0e149674a8 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_started_get_command.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_started_get_command.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_started_get_command_name.html b/libmongoc/1.23.3/mongoc_apm_command_started_get_command_name.html
index afddf9b8cfad59c09853dcea41c84fce199ab4c1..3ec6205af0b7748502707a9542d0473eb275d80c 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_started_get_command_name.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_started_get_command_name.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_started_get_context.html b/libmongoc/1.23.3/mongoc_apm_command_started_get_context.html
index 6ac9ab1afce101e5e9ee3699bb2e75de0b244644..9298d6961e6da0466f3b462c7511d6633f09a4e6 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_started_get_context.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_started_get_context.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_started_get_database_name.html b/libmongoc/1.23.3/mongoc_apm_command_started_get_database_name.html
index 6f446d8d5ca5d83dc429ea366c6169fde1a7e791..14a68352cd89b2c6bb769753d0d8cb1ed97cb259 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_started_get_database_name.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_started_get_database_name.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_started_get_host.html b/libmongoc/1.23.3/mongoc_apm_command_started_get_host.html
index f120412acd314a17899c92879c5bc326d2d0d375..be7e0fbf788bd051b0569903fa93cfb1ba5cc825 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_started_get_host.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_started_get_host.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_started_get_operation_id.html b/libmongoc/1.23.3/mongoc_apm_command_started_get_operation_id.html
index 01581b5f0822d8ab05f495cb9e7be5799af90b10..3772ab4e3463d42fc031c51fafa2aa9f2f300de1 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_started_get_operation_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_started_get_operation_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_started_get_request_id.html b/libmongoc/1.23.3/mongoc_apm_command_started_get_request_id.html
index 8359bc8c8e059875f1b81f74576ddfdf75e555ef..630c20325c9a2e78e058ab3e6e698b4950765a28 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_started_get_request_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_started_get_request_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_started_get_server_connection_id.html b/libmongoc/1.23.3/mongoc_apm_command_started_get_server_connection_id.html
index 355fb5d2b9ae16e03a3c1dbe42a7eec5a36af637..db96e9d169425acd7947bbb5d3252b5e9a0eac03 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_started_get_server_connection_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_started_get_server_connection_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_started_get_server_id.html b/libmongoc/1.23.3/mongoc_apm_command_started_get_server_id.html
index 3b0e4e2e8b2a7a8029696209372582e4bfd493ff..bce78dabc21b0fed1302e29b75fed5b6e803eddf 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_started_get_server_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_started_get_server_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_started_get_service_id.html b/libmongoc/1.23.3/mongoc_apm_command_started_get_service_id.html
index 84418967307ac385b6782b1fabecba8f5f591782..a5d6d099b89ee7624e1f40cf675e587253fda036 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_started_get_service_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_started_get_service_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_started_t.html b/libmongoc/1.23.3/mongoc_apm_command_started_t.html
index 4e6f070731a52246e26160c554ad907993a641eb..c63e0db59705ac2ec1ae2ccee12332e224850ee8 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_started_t.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_started_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_command_name.html b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_command_name.html
index c18424777499fe550ddc690d7fe7e3566729460f..b64284a9e13fd2603b3a23b102962db22e3363eb 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_command_name.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_command_name.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_context.html b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_context.html
index 20d81997ed4ec265a522a64c4fc6749400b9378a..992886d93a57b6c47b66c7ff8d8b90162c617a17 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_context.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_context.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_duration.html b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_duration.html
index 7457ce4f0677f1ef52232a9da7e2ba0afbb4d9fd..d6e074dafc1955eaad7cc2d63c82005be12f0292 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_duration.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_duration.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_host.html b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_host.html
index 0ba0e6e56d077ded3a37db54636ab68a90bc8215..a9fb1628a9e69d824c38c715970f76305e410b60 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_host.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_host.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_operation_id.html b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_operation_id.html
index 8a4068e7a72cfeecd67283e66ff48918bfb1bca1..a73896dcb430906a7f48c305dc1fd23b094a9065 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_operation_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_operation_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_reply.html b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_reply.html
index bc126c127bdd197ccd6f4c6ca2aab81200d2c5cc..2d1298e12848b4da508c295fbb6d3851cf7da9e3 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_reply.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_reply.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_request_id.html b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_request_id.html
index 16c362957b9baf485f4cf3035d0c0a0390795ff9..e9e42842e25df5c4a7a73ce80cb51fb3588b2d9c 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_request_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_request_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_server_connection_id.html b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_server_connection_id.html
index cb52de816906de61428c98d3ece0648c57f3f826..7654182d57918e2544e9d031bcf2caead8743731 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_server_connection_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_server_connection_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_server_id.html b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_server_id.html
index 7d3de8049efa6a24163721f015ba13f8f14b2d6a..025546544fa922ec7ef19e5f97bac8ac918438f3 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_server_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_server_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_service_id.html b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_service_id.html
index 2cfb2fec779efdc2b2ac46d0457f25ebeed5c119..3f80a8407e7adfe372f35314a1d3f735f4accf55 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_service_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_succeeded_get_service_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_command_succeeded_t.html b/libmongoc/1.23.3/mongoc_apm_command_succeeded_t.html
index 71a58fcb309a1b9069fe985e677d2bf16c0eaec8..6817e9b708699b9aaed9fa04b48d010c006fc2d0 100644
--- a/libmongoc/1.23.3/mongoc_apm_command_succeeded_t.html
+++ b/libmongoc/1.23.3/mongoc_apm_command_succeeded_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_changed_get_context.html b/libmongoc/1.23.3/mongoc_apm_server_changed_get_context.html
index 15613117d06a2eca34a8f8205fd3e860cb9d5d85..2de545049a795f5d3538554a77cd541cf3c4c2fd 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_changed_get_context.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_changed_get_context.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_changed_get_host.html b/libmongoc/1.23.3/mongoc_apm_server_changed_get_host.html
index 3c8f894df37f5b1e9e95e04b2ba89d059cf808b1..45fbf9d8b72e90b5aec7f198fa2a4cfcd394fb56 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_changed_get_host.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_changed_get_host.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_changed_get_new_description.html b/libmongoc/1.23.3/mongoc_apm_server_changed_get_new_description.html
index 0ccb272e02c57e5603452dd686ed2f1712358c58..7df8d08ff803539bdab019ed782ff451960b8425 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_changed_get_new_description.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_changed_get_new_description.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_changed_get_previous_description.html b/libmongoc/1.23.3/mongoc_apm_server_changed_get_previous_description.html
index 5eb99621dbd82d445b64294874cb899c4507e7b6..b4b8e59508cf66784062c279aab0eb9b2e80fc1c 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_changed_get_previous_description.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_changed_get_previous_description.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_changed_get_topology_id.html b/libmongoc/1.23.3/mongoc_apm_server_changed_get_topology_id.html
index 36526fcd8823cb293cacb3f6d52e29ffba9c0f5b..b593484a1ae58fa014a1b00b57cbeb664648f276 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_changed_get_topology_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_changed_get_topology_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_changed_t.html b/libmongoc/1.23.3/mongoc_apm_server_changed_t.html
index d6078d01dc1eb2d3184791afe94f851183d4305f..809ac2e9ff6589e63c718e82ba3a10bda4800408 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_changed_t.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_changed_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_closed_get_context.html b/libmongoc/1.23.3/mongoc_apm_server_closed_get_context.html
index 5a7bb99e8ab9bb8a52f7b08872837a76b69ca869..706a8ed0151879d45a189544a8ba83afb81a7ed5 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_closed_get_context.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_closed_get_context.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_closed_get_host.html b/libmongoc/1.23.3/mongoc_apm_server_closed_get_host.html
index 7616cf510460c5b104598988f14b1c4d1e304d46..ca8c88bc3194542daa15d556354898c146fa6046 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_closed_get_host.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_closed_get_host.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_closed_get_topology_id.html b/libmongoc/1.23.3/mongoc_apm_server_closed_get_topology_id.html
index d1ef0ed94a2e85f425413a103bbd5fabbf777610..bb75cdeb083f25a5c59cada566a84210c79d9e26 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_closed_get_topology_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_closed_get_topology_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_closed_t.html b/libmongoc/1.23.3/mongoc_apm_server_closed_t.html
index 4814dc2f13b3d9f7afd4ed9a0f2bd36a0f73d785..0f487acf20840b5fffad7dc8f4193293fbea592c 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_closed_t.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_closed_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_awaited.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_awaited.html
index 061780eb308f3aaa2fb5c8f84000b9bcb47ba188..7a3a3d7f465bd3d285d786c07c6e06fa70257d14 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_awaited.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_awaited.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_context.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_context.html
index be4128b9854c594652187fdc5f8378f72bc9bcd6..96d1cdf92c8a9e0cf0047fccab1b8878a39490c9 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_context.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_context.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_duration.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_duration.html
index 95517ee46a0d3e21cf94f44e4a19361883b8f624..8c2d57836b8fb6630bfb409be05bcafb3ee92263 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_duration.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_duration.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_error.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_error.html
index 2dd1b44936af64561dc77b53114c4042d50df8c6..b574860186b660d90ee732037f3373e108d4a2a4 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_error.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_error.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_host.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_host.html
index 72c416cfea835dbd82662902be8318722e8cd16d..bbb2a57f21b4fb5b0b8a3653e8a4091cb0133e3c 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_host.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_get_host.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_t.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_t.html
index ffec3554779c98f5d1ec3cb5f05b5d0b817d51be..82f198ee211887ee9c4cc5c5a14c6808ecf250f7 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_t.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_failed_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_get_awaited.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_get_awaited.html
index 4d0fc6d7df1d8061b5f6eb720004fe0e1d4aab18..03e29d508b97619fa8bc83037bbe29872e8081e5 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_get_awaited.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_get_awaited.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_get_context.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_get_context.html
index 2ba20c0fa056e1abbbea1e236e3069ef6cf001df..ce4fc1375d0bdb01719b14ea8670c5fd4727cd8b 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_get_context.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_get_context.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_get_host.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_get_host.html
index 7ff429f1b85a8ae7d3e3c29782b3f78d9a2ee733..968c865a8ca7e3193f8fade70646145d7d873cd1 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_get_host.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_get_host.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_t.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_t.html
index 618ac635995ac40a5e26f0219a7ff1b954ccc6d2..321029c596e29d5fa62d240b5eeaf2d2251fa626 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_t.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_started_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_awaited.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_awaited.html
index 1103a32c8193bc70020b88b357240d99f3ffc1c0..fc8af9458ab79254094487c972459a0997f07711 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_awaited.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_awaited.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_context.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_context.html
index 6fc2239f5d4483425e81d3174ce734cf64da009c..bcf1f3fd2102655d26b94ad4cd74e62cdf35f152 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_context.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_context.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_duration.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_duration.html
index b1ba2ebcce792e3854bd21557848871e21ae2cac..251e733093d4f16438f9a8eba443ea8e950e174f 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_duration.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_duration.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_host.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_host.html
index 032a0750a7a3e5c67a59587037434fd92423bf95..6a47a59af3d38211f20d108d1103b6392e3c9b48 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_host.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_host.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_reply.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_reply.html
index 11ad6e23539765291177272b1b8a278afcd4b08d..927342ed6acdf7ebfb2818ecad18f7eba890ec71 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_reply.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_get_reply.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_t.html b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_t.html
index ced6ff0d4a7e919de1a98225fc8b2ddd1f078869..5c974f1d4d341effb5468a5b86202df683b95e7e 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_t.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_heartbeat_succeeded_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_opening_get_context.html b/libmongoc/1.23.3/mongoc_apm_server_opening_get_context.html
index 720a6b1c2f87c7025c7761ccd58992cee6b0396a..6b8ce4c691ae3955cdbec9f74b9f882f6d1d3188 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_opening_get_context.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_opening_get_context.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_opening_get_host.html b/libmongoc/1.23.3/mongoc_apm_server_opening_get_host.html
index cab49e1901613ca129db6d165d8885bf658c2f85..563e943af8bbaf3398a567822ca07bb788455351 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_opening_get_host.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_opening_get_host.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_opening_get_topology_id.html b/libmongoc/1.23.3/mongoc_apm_server_opening_get_topology_id.html
index 5ca337cfabae0bb40a62bfa033c01ae7fc72fb55..d53d5bcc14a352e24994d213b1027ff849e566a7 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_opening_get_topology_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_opening_get_topology_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_server_opening_t.html b/libmongoc/1.23.3/mongoc_apm_server_opening_t.html
index 3c99dcbea02bddd65b938062b55a9aec036c2e03..65a2b3bbd354de565412fe48d7d310a220192c04 100644
--- a/libmongoc/1.23.3/mongoc_apm_server_opening_t.html
+++ b/libmongoc/1.23.3/mongoc_apm_server_opening_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_set_command_failed_cb.html b/libmongoc/1.23.3/mongoc_apm_set_command_failed_cb.html
index f98c21e0839721f728342f736d5e332d6197b6d3..505a9fe40bd39ae7a01d8f58831e5e008dcf597b 100644
--- a/libmongoc/1.23.3/mongoc_apm_set_command_failed_cb.html
+++ b/libmongoc/1.23.3/mongoc_apm_set_command_failed_cb.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_set_command_started_cb.html b/libmongoc/1.23.3/mongoc_apm_set_command_started_cb.html
index 454ef2d0b55020b9cd037cc4234d9b8637b92c27..894e6f95e43fc58a3dcd69c7cb5fe92646b149f7 100644
--- a/libmongoc/1.23.3/mongoc_apm_set_command_started_cb.html
+++ b/libmongoc/1.23.3/mongoc_apm_set_command_started_cb.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_set_command_succeeded_cb.html b/libmongoc/1.23.3/mongoc_apm_set_command_succeeded_cb.html
index b167879005d75ad1f57df759beb333a711b7d7e5..9fd38321af051247eced50a88dc7b0f5f3e041e8 100644
--- a/libmongoc/1.23.3/mongoc_apm_set_command_succeeded_cb.html
+++ b/libmongoc/1.23.3/mongoc_apm_set_command_succeeded_cb.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_set_server_changed_cb.html b/libmongoc/1.23.3/mongoc_apm_set_server_changed_cb.html
index 992ef1704d08bf073f4ab551c0303cd405ef67c5..a8e0f88bbf6ef63ac1176604e32a99a0d1651c97 100644
--- a/libmongoc/1.23.3/mongoc_apm_set_server_changed_cb.html
+++ b/libmongoc/1.23.3/mongoc_apm_set_server_changed_cb.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_set_server_closed_cb.html b/libmongoc/1.23.3/mongoc_apm_set_server_closed_cb.html
index 1bd0ab6704f94f32cd25d14426f8fce4dd231a97..da852f6d0dca594ba67470153115bce199e17084 100644
--- a/libmongoc/1.23.3/mongoc_apm_set_server_closed_cb.html
+++ b/libmongoc/1.23.3/mongoc_apm_set_server_closed_cb.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_set_server_heartbeat_failed_cb.html b/libmongoc/1.23.3/mongoc_apm_set_server_heartbeat_failed_cb.html
index f11c0de243230ad36efcf8a9d19cc8d9b4820c13..6ab6069a4eba9b12d9af8fcd1eb364b699f180f0 100644
--- a/libmongoc/1.23.3/mongoc_apm_set_server_heartbeat_failed_cb.html
+++ b/libmongoc/1.23.3/mongoc_apm_set_server_heartbeat_failed_cb.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_set_server_heartbeat_started_cb.html b/libmongoc/1.23.3/mongoc_apm_set_server_heartbeat_started_cb.html
index 05918bb0d29316390c0cfe770ed80a0da9640fa5..22b11cc232fc28e4e286b37bbace9af28ff8f1e2 100644
--- a/libmongoc/1.23.3/mongoc_apm_set_server_heartbeat_started_cb.html
+++ b/libmongoc/1.23.3/mongoc_apm_set_server_heartbeat_started_cb.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_set_server_heartbeat_succeeded_cb.html b/libmongoc/1.23.3/mongoc_apm_set_server_heartbeat_succeeded_cb.html
index d63979a5903ff55f37bde851e497598eca4509e2..a3ec0e490c1579f0976de23e90b0903b89e09291 100644
--- a/libmongoc/1.23.3/mongoc_apm_set_server_heartbeat_succeeded_cb.html
+++ b/libmongoc/1.23.3/mongoc_apm_set_server_heartbeat_succeeded_cb.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_set_server_opening_cb.html b/libmongoc/1.23.3/mongoc_apm_set_server_opening_cb.html
index 4e409c4f8e8c6f0f8b5a1a8c53ae15052f796023..8b74aa403568a7f93f6095c0715921e238ed0a1b 100644
--- a/libmongoc/1.23.3/mongoc_apm_set_server_opening_cb.html
+++ b/libmongoc/1.23.3/mongoc_apm_set_server_opening_cb.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_set_topology_changed_cb.html b/libmongoc/1.23.3/mongoc_apm_set_topology_changed_cb.html
index fbb42a4a74e1940f91fb11850ab8a3d467e07d68..4ae8f8e6f33c17c4ebc1ef0b97bc37c58acb7bcc 100644
--- a/libmongoc/1.23.3/mongoc_apm_set_topology_changed_cb.html
+++ b/libmongoc/1.23.3/mongoc_apm_set_topology_changed_cb.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_set_topology_closed_cb.html b/libmongoc/1.23.3/mongoc_apm_set_topology_closed_cb.html
index 24310bd365b683abb70870b02a42682ee603c603..6066bac408cf90dda4dc1871109e3ab323e635ec 100644
--- a/libmongoc/1.23.3/mongoc_apm_set_topology_closed_cb.html
+++ b/libmongoc/1.23.3/mongoc_apm_set_topology_closed_cb.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_set_topology_opening_cb.html b/libmongoc/1.23.3/mongoc_apm_set_topology_opening_cb.html
index 9a88c41b738169988f5a1c311770f2e676b04d38..a26c3b064c12971cf13e64816cffdf8dd30691e2 100644
--- a/libmongoc/1.23.3/mongoc_apm_set_topology_opening_cb.html
+++ b/libmongoc/1.23.3/mongoc_apm_set_topology_opening_cb.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_topology_changed_get_context.html b/libmongoc/1.23.3/mongoc_apm_topology_changed_get_context.html
index fd51b7249065ee6da151a3e972534ad157c7919b..e900d5c296f2276772d8f2ad0ad1367f8f317ce8 100644
--- a/libmongoc/1.23.3/mongoc_apm_topology_changed_get_context.html
+++ b/libmongoc/1.23.3/mongoc_apm_topology_changed_get_context.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_topology_changed_get_new_description.html b/libmongoc/1.23.3/mongoc_apm_topology_changed_get_new_description.html
index 175ebb7ab66d266a7a44df4bbe97060088477f81..45231cf57d5f53e75a7e315e1fdcf8ecd388f1b9 100644
--- a/libmongoc/1.23.3/mongoc_apm_topology_changed_get_new_description.html
+++ b/libmongoc/1.23.3/mongoc_apm_topology_changed_get_new_description.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_topology_changed_get_previous_description.html b/libmongoc/1.23.3/mongoc_apm_topology_changed_get_previous_description.html
index 106824e3ba91074a6968590b40ec47c0235fe6ff..10ea76740db4e3326e8af8c41c8c651af8f0bf09 100644
--- a/libmongoc/1.23.3/mongoc_apm_topology_changed_get_previous_description.html
+++ b/libmongoc/1.23.3/mongoc_apm_topology_changed_get_previous_description.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_topology_changed_get_topology_id.html b/libmongoc/1.23.3/mongoc_apm_topology_changed_get_topology_id.html
index 1587b37fc87ff6c02e93210be9be09f951625e13..ed96b0d525ae5d6e4baa72e927a194458a2653e6 100644
--- a/libmongoc/1.23.3/mongoc_apm_topology_changed_get_topology_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_topology_changed_get_topology_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_topology_changed_t.html b/libmongoc/1.23.3/mongoc_apm_topology_changed_t.html
index 24478593810cb917e9d50bd8fe83c31249dd533f..6a9250c78547a27d5449b6cf64abde9b4b6928b5 100644
--- a/libmongoc/1.23.3/mongoc_apm_topology_changed_t.html
+++ b/libmongoc/1.23.3/mongoc_apm_topology_changed_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_topology_closed_get_context.html b/libmongoc/1.23.3/mongoc_apm_topology_closed_get_context.html
index 604285b65c9e6b792303560145656268366f7065..8ef8d21457d864e6a7bd9432771d014eae2107cd 100644
--- a/libmongoc/1.23.3/mongoc_apm_topology_closed_get_context.html
+++ b/libmongoc/1.23.3/mongoc_apm_topology_closed_get_context.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_topology_closed_get_topology_id.html b/libmongoc/1.23.3/mongoc_apm_topology_closed_get_topology_id.html
index 2440ace700cf2c2ec12e7f2e32783a62098acd5c..c9455f8e107a18ee54af88d123328d2097662459 100644
--- a/libmongoc/1.23.3/mongoc_apm_topology_closed_get_topology_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_topology_closed_get_topology_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_topology_closed_t.html b/libmongoc/1.23.3/mongoc_apm_topology_closed_t.html
index 410811ae939bdfe40359e3f148c592e4d92a81b3..f1a52d34ce37d822ce159301c3fe3ad440277340 100644
--- a/libmongoc/1.23.3/mongoc_apm_topology_closed_t.html
+++ b/libmongoc/1.23.3/mongoc_apm_topology_closed_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_topology_opening_get_context.html b/libmongoc/1.23.3/mongoc_apm_topology_opening_get_context.html
index 8d408ade4905f63a9b80437df0b532afcfa7755a..076f6e34b4c07bc7a72761a745892e4afa37b9ae 100644
--- a/libmongoc/1.23.3/mongoc_apm_topology_opening_get_context.html
+++ b/libmongoc/1.23.3/mongoc_apm_topology_opening_get_context.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_topology_opening_get_topology_id.html b/libmongoc/1.23.3/mongoc_apm_topology_opening_get_topology_id.html
index c50cdf45c9acb9186cf32c0f7067ab2f164d34c3..cb1a43c3c270615abddc186a1c00754d29601824 100644
--- a/libmongoc/1.23.3/mongoc_apm_topology_opening_get_topology_id.html
+++ b/libmongoc/1.23.3/mongoc_apm_topology_opening_get_topology_id.html
@@ -37,6 +37,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_apm_topology_opening_t.html b/libmongoc/1.23.3/mongoc_apm_topology_opening_t.html
index 4f36ba9edc5e05ae960d0dc8c688570b146124a3..be8621511dabc20e17b1589c5a053b5a7e35b768 100644
--- a/libmongoc/1.23.3/mongoc_apm_topology_opening_t.html
+++ b/libmongoc/1.23.3/mongoc_apm_topology_opening_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_auto_encryption_opts_destroy.html b/libmongoc/1.23.3/mongoc_auto_encryption_opts_destroy.html
index bb04e72cab374f1fe2dc8464c34bb5a8f678a120..1ac8c8ba0f5855baaa7f0cc96a0e35564078da6a 100644
--- a/libmongoc/1.23.3/mongoc_auto_encryption_opts_destroy.html
+++ b/libmongoc/1.23.3/mongoc_auto_encryption_opts_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_auto_encryption_opts_new.html b/libmongoc/1.23.3/mongoc_auto_encryption_opts_new.html
index 505185c59a1ca26a563cb0a4b8e6a118138eca4a..3268c8dc3b7ac564c910a0817cfab9b56d3637a9 100644
--- a/libmongoc/1.23.3/mongoc_auto_encryption_opts_new.html
+++ b/libmongoc/1.23.3/mongoc_auto_encryption_opts_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_bypass_auto_encryption.html b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_bypass_auto_encryption.html
index 47752f5cd61c146439c1613076a5216e23a3d888..91e70df6fbeef0e1076c471996a53958ac0b1a45 100644
--- a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_bypass_auto_encryption.html
+++ b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_bypass_auto_encryption.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_bypass_query_analysis.html b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_bypass_query_analysis.html
index 20a6e18395e97a7d07455649c4afdacba074cf65..5965d793e749234d85ed5888cbb507af0d5fd231 100644
--- a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_bypass_query_analysis.html
+++ b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_bypass_query_analysis.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_encrypted_fields_map.html b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_encrypted_fields_map.html
index ba99c18e8019472e2dcfef7345fcd294f02ac104..540191cc8bcbd76149a405cc3651fe0dcbfa73e1 100644
--- a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_encrypted_fields_map.html
+++ b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_encrypted_fields_map.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_extra.html b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_extra.html
index 381cefc811dde52ebfbdced6b996902b82635baf..60d59ece87c8a426a6129caf05d419c382ac78fc 100644
--- a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_extra.html
+++ b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_extra.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_keyvault_client.html b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_keyvault_client.html
index 7c00b9991d3994e3ca8ed8b528c695154ae4dad7..cf5e87366d10414f01afcd58e8c41001e7b8d178 100644
--- a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_keyvault_client.html
+++ b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_keyvault_client.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_keyvault_client_pool.html b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_keyvault_client_pool.html
index 8f6946146602debb0588a9e4e9018469064c9f8b..2d3cc669d6bec064ec2b2132f708d98a15d196f3 100644
--- a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_keyvault_client_pool.html
+++ b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_keyvault_client_pool.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_keyvault_namespace.html b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_keyvault_namespace.html
index d456af2a2c1c97adec2222605712596522c173b8..d0fba7dc66b400d1befddaeea10fc5ade9e25fcd 100644
--- a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_keyvault_namespace.html
+++ b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_keyvault_namespace.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_kms_credential_provider_callback.html b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_kms_credential_provider_callback.html
index e452cf89a3d0c94c0bb8c81432e03841cc9f6dc7..4805429cc369cb6b71386b0f5330425449e68dd4 100644
--- a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_kms_credential_provider_callback.html
+++ b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_kms_credential_provider_callback.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_kms_providers.html b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_kms_providers.html
index 8ce8eb3ef9ac335cec0135f0a118e5318bc7c6f6..ab3acb63d62454d7ccd882c4b0baa679d2625c73 100644
--- a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_kms_providers.html
+++ b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_kms_providers.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_schema_map.html b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_schema_map.html
index 466fd4725c82df5a9ee154da536d9dff3ff8e9e7..2b1f9086b2926385bcb19dc5c4a629ba658173c2 100644
--- a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_schema_map.html
+++ b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_schema_map.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_tls_opts.html b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_tls_opts.html
index 6d1525912278e15f1ebe62a35607d8cd462f1f1e..992a8411e4e68b7e389a486d9cfc8df586ebfa3f 100644
--- a/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_tls_opts.html
+++ b/libmongoc/1.23.3/mongoc_auto_encryption_opts_set_tls_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_auto_encryption_opts_t.html b/libmongoc/1.23.3/mongoc_auto_encryption_opts_t.html
index df39225090c808863abf36443ba8004d133cd61d..dbf83e02a964e8dc7d168773f582e5811d62458b 100644
--- a/libmongoc/1.23.3/mongoc_auto_encryption_opts_t.html
+++ b/libmongoc/1.23.3/mongoc_auto_encryption_opts_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_delete.html b/libmongoc/1.23.3/mongoc_bulk_operation_delete.html
index d025adc9845098b56b8f355783f0c48a75e26285..f66286c11de6caced9f560f9a190c2c1998aa202 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_delete.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_delete.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_delete_one.html b/libmongoc/1.23.3/mongoc_bulk_operation_delete_one.html
index b45447f36841b0f29014c5ba1e2e229981239b2c..c01b1fbcee869ed5a3dd40c393eecc12d2e93a84 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_delete_one.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_delete_one.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_destroy.html b/libmongoc/1.23.3/mongoc_bulk_operation_destroy.html
index db6e7682564acb0a037ae769679462bcb4518c06..256cc7c8a54afb02deeb8865965935e86da6d81e 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_destroy.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_execute.html b/libmongoc/1.23.3/mongoc_bulk_operation_execute.html
index 83437da85e02e3a7d85a5c15f0aeda01f0f6c9a6..0f9c7adb91264509b09f7e73900fae3fed9a7354 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_execute.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_execute.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_get_hint.html b/libmongoc/1.23.3/mongoc_bulk_operation_get_hint.html
index 3c7917be0dbfee4e4afb54c349ecff44196e7132..2455f8b8f33a5da7a5e1f7b49e601227f4a21640 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_get_hint.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_get_hint.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_get_write_concern.html b/libmongoc/1.23.3/mongoc_bulk_operation_get_write_concern.html
index 5ee5b49985dddda21f93290313381d00aa490a9e..cf7b931a77c1b8e0fbf374676365af56a58fc727 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_get_write_concern.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_get_write_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_insert.html b/libmongoc/1.23.3/mongoc_bulk_operation_insert.html
index 4eeca391b502412874aa46d6f5234dfcaac69c79..c3541ada7fc2e1920ddfab37c776cce636d49c68 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_insert.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_insert.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_insert_with_opts.html b/libmongoc/1.23.3/mongoc_bulk_operation_insert_with_opts.html
index c6917b21910199b2887bc0d9d66223afd61684a6..e1678039724b3b40b9faff60fa5f88a734c5b5fe 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_insert_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_insert_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_remove.html b/libmongoc/1.23.3/mongoc_bulk_operation_remove.html
index a34129119cfbcdd0494cd782718dfd95638747f6..3c8949351627bb71d52a092dc84d08c5bad34706 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_remove.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_remove.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_remove_many_with_opts.html b/libmongoc/1.23.3/mongoc_bulk_operation_remove_many_with_opts.html
index 27d3365af10b9fba014c3b8091b9aab2a71827e7..61a15cac3518cd684fed43039cac5ba7198bb82c 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_remove_many_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_remove_many_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_remove_one.html b/libmongoc/1.23.3/mongoc_bulk_operation_remove_one.html
index d14f1c752fc23174f848b695cd543aa07bbb9997..e9c7e415bbfe21d3c32cd8cf60a1d108c92cb546 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_remove_one.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_remove_one.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_remove_one_with_opts.html b/libmongoc/1.23.3/mongoc_bulk_operation_remove_one_with_opts.html
index 4fdee705ae4e0623566713a06efced0844fb57ae..5d785945873dd67d1a83a40e00996f57925a0ab6 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_remove_one_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_remove_one_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_replace_one.html b/libmongoc/1.23.3/mongoc_bulk_operation_replace_one.html
index e9b9838b39ae4d5ce8db7750cbfd09e01c4bd892..d6686f997c4bad300b16bbd2ec2faaf27e0d8d3d 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_replace_one.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_replace_one.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_replace_one_with_opts.html b/libmongoc/1.23.3/mongoc_bulk_operation_replace_one_with_opts.html
index 4fd63b9ff81c035790b7044613603ef5a252f264..857db487128ec39692ad769b778471fa14efecf4 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_replace_one_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_replace_one_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_set_bypass_document_validation.html b/libmongoc/1.23.3/mongoc_bulk_operation_set_bypass_document_validation.html
index c73a98c70495614094ab6fa366f09aa4e0029db9..5b48862f83c55cdd54ba3df04b3f835a72e2d5b2 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_set_bypass_document_validation.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_set_bypass_document_validation.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_set_client_session.html b/libmongoc/1.23.3/mongoc_bulk_operation_set_client_session.html
index cba875e262b34fd14c46382549459a266a36a4a7..eae6f96aca53952a4559aec0ffc5abafb4f6f227 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_set_client_session.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_set_client_session.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_set_comment.html b/libmongoc/1.23.3/mongoc_bulk_operation_set_comment.html
index fca8773c5ceff440f23da18963c7763af459428f..13f3a23211456b1490d0918ab538ab06b0fe71d4 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_set_comment.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_set_comment.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_set_hint.html b/libmongoc/1.23.3/mongoc_bulk_operation_set_hint.html
index 9d63fb88d464772450176fb7e1b8becb29c9335c..ec9864cb4daa07d4c9117d7bcf2ae403908a421c 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_set_hint.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_set_hint.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_set_let.html b/libmongoc/1.23.3/mongoc_bulk_operation_set_let.html
index 242694e03a14256d0809eec5a806d58185eb1499..074c3cb156a9df30bf5844752fbe5de2b6bd6823 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_set_let.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_set_let.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_t.html b/libmongoc/1.23.3/mongoc_bulk_operation_t.html
index e897683e71a212fdbcd0ff4efbb5dda531e09203..c11c881471f73f958be64cb7fdae02d7d1d603f1 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_t.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_update.html b/libmongoc/1.23.3/mongoc_bulk_operation_update.html
index 7deb9befe8dd52e9fb104fc24db3bd51b34a98e3..671418a612abb6d777881ec98d6ca4e04fb03953 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_update.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_update.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_update_many_with_opts.html b/libmongoc/1.23.3/mongoc_bulk_operation_update_many_with_opts.html
index 56061dec76750707e61272a4d74809b883fe8ad4..bfe1061703387a60f7eff168e15116757330da8c 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_update_many_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_update_many_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_update_one.html b/libmongoc/1.23.3/mongoc_bulk_operation_update_one.html
index 443aa676af936c6ac57b324f549e8f7943845111..673595ad4b8a11f052cc1188da97f514543b09d4 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_update_one.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_update_one.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_bulk_operation_update_one_with_opts.html b/libmongoc/1.23.3/mongoc_bulk_operation_update_one_with_opts.html
index a987910746f7783bded7a97fec56bf16d6b7074d..27a6dbbc1be5ea1471f7c0a08ec9ee0dd448d2ea 100644
--- a/libmongoc/1.23.3/mongoc_bulk_operation_update_one_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_bulk_operation_update_one_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_change_stream_destroy.html b/libmongoc/1.23.3/mongoc_change_stream_destroy.html
index 2b95d9098f3e26269632bdbf9ea0568c870be2ff..f8729a4e0ca963796cb0a57b2e123b51e63a67ac 100644
--- a/libmongoc/1.23.3/mongoc_change_stream_destroy.html
+++ b/libmongoc/1.23.3/mongoc_change_stream_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_change_stream_error_document.html b/libmongoc/1.23.3/mongoc_change_stream_error_document.html
index e8b7e91ac3a183ac3d3c0792381bd34dbe4a97e2..48c464e1ea183d1705bedda7cb27be1fc3b6d091 100644
--- a/libmongoc/1.23.3/mongoc_change_stream_error_document.html
+++ b/libmongoc/1.23.3/mongoc_change_stream_error_document.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_change_stream_get_resume_token.html b/libmongoc/1.23.3/mongoc_change_stream_get_resume_token.html
index 0185bf68c23f2d2a139c188682cffa019f382b63..595632491d92e0f4586a54d37c529e9632642835 100644
--- a/libmongoc/1.23.3/mongoc_change_stream_get_resume_token.html
+++ b/libmongoc/1.23.3/mongoc_change_stream_get_resume_token.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_change_stream_next.html b/libmongoc/1.23.3/mongoc_change_stream_next.html
index 0db54749ec202743d0056f8f9c414d9b2c92710e..0b81f9697b11ec54483becedf152f8364b48290e 100644
--- a/libmongoc/1.23.3/mongoc_change_stream_next.html
+++ b/libmongoc/1.23.3/mongoc_change_stream_next.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_change_stream_t.html b/libmongoc/1.23.3/mongoc_change_stream_t.html
index 1d1875bd021f9cd5b195901aa45e86d35e4387d6..45e0d89477b53ad69789316b1e393832a2a0b285 100644
--- a/libmongoc/1.23.3/mongoc_change_stream_t.html
+++ b/libmongoc/1.23.3/mongoc_change_stream_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_check_version.html b/libmongoc/1.23.3/mongoc_check_version.html
index cd2ed033505bfed4a7e5439e483ba514ecc16903..c1289f8301204c2cdd786e17bd63bbf570932e06 100644
--- a/libmongoc/1.23.3/mongoc_check_version.html
+++ b/libmongoc/1.23.3/mongoc_check_version.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cleanup.html b/libmongoc/1.23.3/mongoc_cleanup.html
index ecd11e2a7f653481ebe2b4497220b989e8bfad97..566f8d2bb0926c5e833acc526cbc7cff90ce59c0 100644
--- a/libmongoc/1.23.3/mongoc_cleanup.html
+++ b/libmongoc/1.23.3/mongoc_cleanup.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_command.html b/libmongoc/1.23.3/mongoc_client_command.html
index 518b20f828169e1999a628fd5e45374cd2d851da..cdc7d6e53e72e54445e2402412e7414e14ff6a87 100644
--- a/libmongoc/1.23.3/mongoc_client_command.html
+++ b/libmongoc/1.23.3/mongoc_client_command.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_command_simple.html b/libmongoc/1.23.3/mongoc_client_command_simple.html
index cb26e238de4ad9c34ad34a3314fcd1e90f1e78f5..e12c5d6d2e2290b616f87152b13cbdf4a5b26361 100644
--- a/libmongoc/1.23.3/mongoc_client_command_simple.html
+++ b/libmongoc/1.23.3/mongoc_client_command_simple.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_command_simple_with_server_id.html b/libmongoc/1.23.3/mongoc_client_command_simple_with_server_id.html
index 166dcea4b7bafeb3b07d92b722d9dc9fab922ef7..01a95fd474e0e51e77227f3de725759285724959 100644
--- a/libmongoc/1.23.3/mongoc_client_command_simple_with_server_id.html
+++ b/libmongoc/1.23.3/mongoc_client_command_simple_with_server_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_command_with_opts.html b/libmongoc/1.23.3/mongoc_client_command_with_opts.html
index 3b20b85edb37f473a82e03ed7ae2ed459f337d24..1bd6c7ac0930b4bc97f09d0416f7db7b499f797e 100644
--- a/libmongoc/1.23.3/mongoc_client_command_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_client_command_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_destroy.html b/libmongoc/1.23.3/mongoc_client_destroy.html
index 07fe03ea13c79e3aca899af38d52c2c981851a26..f63a4ccaf49f9da30ff27e5e9a94802da62edfcb 100644
--- a/libmongoc/1.23.3/mongoc_client_destroy.html
+++ b/libmongoc/1.23.3/mongoc_client_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_enable_auto_encryption.html b/libmongoc/1.23.3/mongoc_client_enable_auto_encryption.html
index e7ba7d8a2c5555857e260d3b35a4ece982429ad1..504e133ab513705c8a34045c7127ac5d84cef495 100644
--- a/libmongoc/1.23.3/mongoc_client_enable_auto_encryption.html
+++ b/libmongoc/1.23.3/mongoc_client_enable_auto_encryption.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_add_key_alt_name.html b/libmongoc/1.23.3/mongoc_client_encryption_add_key_alt_name.html
index e8e153b8f10238a98503826659a239ddc545c16a..74ae3aeae9f0a69490b07b4682c5028e3d647a51 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_add_key_alt_name.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_add_key_alt_name.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_create_datakey.html b/libmongoc/1.23.3/mongoc_client_encryption_create_datakey.html
index f119966c3f4dfd62ef6094b201d680156e1e09be..7311667f0edc46391d446ed152a5293e0cc499ff 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_create_datakey.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_create_datakey.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_destroy.html b/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_destroy.html
index 6c8158ae711296ef5c04e18af0a4a615200b2005..e81fbbcb4c90c72222919c94b5b4417fc78f4528 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_destroy.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_new.html b/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_new.html
index 129069ee9784d88bb86e51934812b67fbae3c173..860536631569082693e744cbca3d5e28525e861a 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_new.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_set_keyaltnames.html b/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_set_keyaltnames.html
index 43b404258661422fd2d9533c1efe63be16e3e4c5..5808e3a66c5dffe9ca409a07d78c6d478b0f1662 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_set_keyaltnames.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_set_keyaltnames.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_set_keymaterial.html b/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_set_keymaterial.html
index c58e4be7aff2ae2aec525f5fcd05f5032f499dc6..1badacdf89466316043e59adb46e2b89dfb95322 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_set_keymaterial.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_set_keymaterial.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_set_masterkey.html b/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_set_masterkey.html
index 1ec747cb3dc9b7037e1bd224491f5fdc85db51e6..3dbecf6489d7de87fcf2eca6e835e6cefefcc293 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_set_masterkey.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_set_masterkey.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_t.html b/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_t.html
index f3158bd97ee6ba4c11a8c4e8ca2dea6528a26882..f5f7ad6670ecd33da8a1b40f59171edb97e2254e 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_t.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_datakey_opts_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_decrypt.html b/libmongoc/1.23.3/mongoc_client_encryption_decrypt.html
index 2117a20337b31f5b35ad3a44d1379b889a803cfb..7a293e80b5cfe5750add5d228ceb0cc3c8828e8e 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_decrypt.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_decrypt.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_delete_key.html b/libmongoc/1.23.3/mongoc_client_encryption_delete_key.html
index ed6ff5e4a7b153ec62843e55a90877b33b6848f2..89ba8333e695b902f51c53f9ff27b15fc6967b2e 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_delete_key.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_delete_key.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_destroy.html b/libmongoc/1.23.3/mongoc_client_encryption_destroy.html
index 9a1aee4d3ed02fa3260d32653c17093a8bbe5422..e64d48f9f5b74b133bd72810ffef6f034321a3b7 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_destroy.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_encrypt.html b/libmongoc/1.23.3/mongoc_client_encryption_encrypt.html
index e7891c6c9150c63379e85f452104289e636f8bd3..d6ace435cf0baeda74178715c9d3f0c01ae8138e 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_encrypt.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_encrypt.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_destroy.html b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_destroy.html
index 83dbd4621d5068e4f15078bfcf51d17703c71e0a..51007e6bd232f3777c020a448b87d7bbb448a5e1 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_destroy.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_new.html b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_new.html
index 5fbc39c6ca5bd5726ad106f9a988d0d9b8e610a1..beb1a06da733822e5b27baa3016ce2e33dcd34e7 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_new.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_algorithm.html b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_algorithm.html
index 61f622ae5305277a5a832bcb6289b380cfc8c274..79211214cc39a4b4c2a12e14932a514382431c48 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_algorithm.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_algorithm.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_contention_factor.html b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_contention_factor.html
index 5c0e996d12f84c70488d1f9fcbc67af1c0c6da3b..83b88f91dd7081deda5b3dc0448151e1db526a69 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_contention_factor.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_contention_factor.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_keyaltname.html b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_keyaltname.html
index 0a806be9450bd06a6a5a8198537a1865ce604736..38627c11f938b967dd9022b939009dd5e26df004 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_keyaltname.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_keyaltname.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_keyid.html b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_keyid.html
index 4046a19ad6d854f083c6cf1f314895d755364419..faa4c57fae80e70066506766f81f3a166314928d 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_keyid.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_keyid.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_query_type.html b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_query_type.html
index ac14453af5fb2bfa9cbc33dda1ac54401638dc24..348674bed4b39a057ed01069a59d8f090fd76650 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_query_type.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_set_query_type.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_t.html b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_t.html
index f9c5c1e5df0861bfe627aa8d52f5e6c058ccbfe7..79297798d7a49ff50ff4d93c2dbf56d901b5791d 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_t.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_encrypt_opts_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_get_crypt_shared_version.html b/libmongoc/1.23.3/mongoc_client_encryption_get_crypt_shared_version.html
index 331e23cbc9eb5999f46986b52990b22f0b0c749f..21d9e2264369a16a05204b3133b85cd57f3a7904 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_get_crypt_shared_version.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_get_crypt_shared_version.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_get_key.html b/libmongoc/1.23.3/mongoc_client_encryption_get_key.html
index 22a84f87b254405978dbf145ffdf57230f32875b..1c9651b46d4f4f9888ef51165ca8988912538823 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_get_key.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_get_key.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_get_key_by_alt_name.html b/libmongoc/1.23.3/mongoc_client_encryption_get_key_by_alt_name.html
index b0298079329768ccd5ad4a0b71a85f581ec20308..1339239e0055b3fa53cf7a21ac9b92838fb10d1e 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_get_key_by_alt_name.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_get_key_by_alt_name.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_get_keys.html b/libmongoc/1.23.3/mongoc_client_encryption_get_keys.html
index 63c7f02eacc49f9b2b5bdfcd4f7b382236f5e1cd..e2c32e14d2066155c1221f3159925963e2730eec 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_get_keys.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_get_keys.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_new.html b/libmongoc/1.23.3/mongoc_client_encryption_new.html
index dad5a939ee920421d1149cbf1025dfa10061a0b9..e419100189649ca2a2c8b6bd417ccd92a5d19834 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_new.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_opts_destroy.html b/libmongoc/1.23.3/mongoc_client_encryption_opts_destroy.html
index 826efe0d20eebcb56c55eac9a5632739b86d84c1..b4bb1b4633119cfc0fd4a2af06394ba1722625bb 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_opts_destroy.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_opts_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_opts_new.html b/libmongoc/1.23.3/mongoc_client_encryption_opts_new.html
index 27d29a35c4183625521cc3d13cc990137537bd63..6b7de028874bba108a4a4956fc5650c064c0d262 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_opts_new.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_opts_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_opts_set_keyvault_client.html b/libmongoc/1.23.3/mongoc_client_encryption_opts_set_keyvault_client.html
index cbf3caeaa9959e371489c3284d0e03a1d95c7c6e..e038ef1fcde590e1992dcb3b05dd776eaf23ffbb 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_opts_set_keyvault_client.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_opts_set_keyvault_client.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_opts_set_keyvault_namespace.html b/libmongoc/1.23.3/mongoc_client_encryption_opts_set_keyvault_namespace.html
index b072440fd50957231b4307c9d3d59cd8dc692a39..a8e240020124d3d0f44bb062e0aa9da128255d93 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_opts_set_keyvault_namespace.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_opts_set_keyvault_namespace.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_opts_set_kms_credential_provider_callback.html b/libmongoc/1.23.3/mongoc_client_encryption_opts_set_kms_credential_provider_callback.html
index 45bb1344a82dabca657757c2f0dad9da7a1502f7..18668665662500cda8fd43bae6b93b8eade9e10c 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_opts_set_kms_credential_provider_callback.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_opts_set_kms_credential_provider_callback.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_opts_set_kms_providers.html b/libmongoc/1.23.3/mongoc_client_encryption_opts_set_kms_providers.html
index e66516bb80370f8f9956f57a44ee6053a1c25e13..79087cbf4eb26ebe41c9d15fadba70ee90614b02 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_opts_set_kms_providers.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_opts_set_kms_providers.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_opts_set_tls_opts.html b/libmongoc/1.23.3/mongoc_client_encryption_opts_set_tls_opts.html
index 0120f14f606d6bd565ea65a43b24c27829c00c85..a1798f838ced404fb1f593348f7e68c048f86b87 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_opts_set_tls_opts.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_opts_set_tls_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_opts_t.html b/libmongoc/1.23.3/mongoc_client_encryption_opts_t.html
index eacdb77bb2aa0c27a3d0bc55bc8742b19c6d1485..c94aa1e2bc16b15a324b008e1bedbdaf8d604f4c 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_opts_t.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_opts_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_remove_key_alt_name.html b/libmongoc/1.23.3/mongoc_client_encryption_remove_key_alt_name.html
index ef0f269419844208d063ec46870c66d1d3c94230..e16f67afa0e04b5353a4ad9416a7081196f97e0b 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_remove_key_alt_name.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_remove_key_alt_name.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey.html b/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey.html
index 8b8cc32894e6352e7027cb47985228bd5a59ff05..97c0fd88d68636eb313aaeb47625fc43527657ab 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_destroy.html b/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_destroy.html
index 689530d9d0bc4876612840fabb84f0563fbcb467..c73b1c234ea4cc08dc112d877c1207584e6b1a60 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_destroy.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result.html b/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result.html
index 4dd8ce5ed6cbb081bd258d87ed3d8943f0f2d74c..fccae51e47769a4c627fc1bcb6a763337f76d0ed 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_new.html b/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_new.html
index 434aefd12dbb2b019145d3eeeed6781c475f5948..419221b9e55525dfead7cd9475686277de10e153 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_new.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_t.html b/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_t.html
index 3661cc7b1af2c99c1cede1542ca242e5c02e68e6..69cb1d78272ef902ea210fd6c13b203c2167db23 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_t.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_rewrap_many_datakey_result_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_encryption_t.html b/libmongoc/1.23.3/mongoc_client_encryption_t.html
index 6f2bce923d1b9c876b3cf78f95b5356c3eb86063..9bc38329ac2a286a4350c665642a9509dce87c29 100644
--- a/libmongoc/1.23.3/mongoc_client_encryption_t.html
+++ b/libmongoc/1.23.3/mongoc_client_encryption_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_find_databases_with_opts.html b/libmongoc/1.23.3/mongoc_client_find_databases_with_opts.html
index 9af9bd5c2d4ed4fc361dc649d334b2626bc8db0c..4f0c593165caf17b3bcb7754b5ded81a039e62cf 100644
--- a/libmongoc/1.23.3/mongoc_client_find_databases_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_client_find_databases_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_collection.html b/libmongoc/1.23.3/mongoc_client_get_collection.html
index 64f0561294082a56d347928d62bb9681adb338fc..948bed14eab04524135e63c5d4cf5e5807a6b121 100644
--- a/libmongoc/1.23.3/mongoc_client_get_collection.html
+++ b/libmongoc/1.23.3/mongoc_client_get_collection.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_crypt_shared_version.html b/libmongoc/1.23.3/mongoc_client_get_crypt_shared_version.html
index faf040cb2cbe84034d7c3d0206fdbce9f2010f71..aced79b5e3c8bb57612f895baadb2a7b3915c60c 100644
--- a/libmongoc/1.23.3/mongoc_client_get_crypt_shared_version.html
+++ b/libmongoc/1.23.3/mongoc_client_get_crypt_shared_version.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_database.html b/libmongoc/1.23.3/mongoc_client_get_database.html
index de67145c18a5b683a018dd4d59ec5c625dacdb80..f257044be5aa8b9a4b526919353edf150d12f7ed 100644
--- a/libmongoc/1.23.3/mongoc_client_get_database.html
+++ b/libmongoc/1.23.3/mongoc_client_get_database.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_database_names.html b/libmongoc/1.23.3/mongoc_client_get_database_names.html
index 31cb3312d459361d2e9c179b851f9aa0a3a00e9d..6e0c0c138798fc4c72b5896ed1b59ab25468c950 100644
--- a/libmongoc/1.23.3/mongoc_client_get_database_names.html
+++ b/libmongoc/1.23.3/mongoc_client_get_database_names.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_database_names_with_opts.html b/libmongoc/1.23.3/mongoc_client_get_database_names_with_opts.html
index 581521995b63b4d3c27ac4d0d9bc55c635e03fee..46abdc5e1af33eb26c6d819df95d48911bde2608 100644
--- a/libmongoc/1.23.3/mongoc_client_get_database_names_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_client_get_database_names_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_default_database.html b/libmongoc/1.23.3/mongoc_client_get_default_database.html
index 667d327cad83cbb84b592d599fa8bb29f114fa65..565bff6658f79d23b7899dcf4f1a5584bb99160a 100644
--- a/libmongoc/1.23.3/mongoc_client_get_default_database.html
+++ b/libmongoc/1.23.3/mongoc_client_get_default_database.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_gridfs.html b/libmongoc/1.23.3/mongoc_client_get_gridfs.html
index 0141954f98812b5114770072d1ab8fb1fd0da4e0..e1ceae6ced5ac2cf0c2ecf21b8801e28a4f1d135 100644
--- a/libmongoc/1.23.3/mongoc_client_get_gridfs.html
+++ b/libmongoc/1.23.3/mongoc_client_get_gridfs.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_handshake_description.html b/libmongoc/1.23.3/mongoc_client_get_handshake_description.html
index e2c7a67cf4d0608a15a48a7db1e780d60f538db4..efd9c3ecc09db7248abb815bc5cb9240ec969bf0 100644
--- a/libmongoc/1.23.3/mongoc_client_get_handshake_description.html
+++ b/libmongoc/1.23.3/mongoc_client_get_handshake_description.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_max_bson_size.html b/libmongoc/1.23.3/mongoc_client_get_max_bson_size.html
index 702767da29897640bcd874e37543b024462eb742..c56207c9f3a1bddb7f0a8fefe9cf4c6df7c3c63c 100644
--- a/libmongoc/1.23.3/mongoc_client_get_max_bson_size.html
+++ b/libmongoc/1.23.3/mongoc_client_get_max_bson_size.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_max_message_size.html b/libmongoc/1.23.3/mongoc_client_get_max_message_size.html
index 026835520ed84c378bbddb212be177da447f3af9..dd511c29cfef5985cc17f51f52bc01915fb2195f 100644
--- a/libmongoc/1.23.3/mongoc_client_get_max_message_size.html
+++ b/libmongoc/1.23.3/mongoc_client_get_max_message_size.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_read_concern.html b/libmongoc/1.23.3/mongoc_client_get_read_concern.html
index f047fe0d171982e95bc1c9d3ce44f8fd39d68cc3..a376a5c4b95d1dfc073906bfe09272345b8b5e33 100644
--- a/libmongoc/1.23.3/mongoc_client_get_read_concern.html
+++ b/libmongoc/1.23.3/mongoc_client_get_read_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_read_prefs.html b/libmongoc/1.23.3/mongoc_client_get_read_prefs.html
index cb83cc514a3acc7bd9dd748a33f8102f021cef99..962a0ea53829d778b2b7ddad78c79c4d9dd43866 100644
--- a/libmongoc/1.23.3/mongoc_client_get_read_prefs.html
+++ b/libmongoc/1.23.3/mongoc_client_get_read_prefs.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_server_description.html b/libmongoc/1.23.3/mongoc_client_get_server_description.html
index 1f88cbfa2e169dca43aea06ba990e0bb7bd5eacb..e0e2c7455dedf31e7b0a0445f6ed9afec07d846c 100644
--- a/libmongoc/1.23.3/mongoc_client_get_server_description.html
+++ b/libmongoc/1.23.3/mongoc_client_get_server_description.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_server_descriptions.html b/libmongoc/1.23.3/mongoc_client_get_server_descriptions.html
index 82d742024e48553369dfb3bfc29eda803fa7965a..7a52cdc6d94525a3db177ed65c987d2dae757bd0 100644
--- a/libmongoc/1.23.3/mongoc_client_get_server_descriptions.html
+++ b/libmongoc/1.23.3/mongoc_client_get_server_descriptions.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_server_status.html b/libmongoc/1.23.3/mongoc_client_get_server_status.html
index 96860f0aeeb3be64b8bc67c718d73027bae82cb0..ebb8471ecc5ab3734e2f2fc2d8b514d4898d2a76 100644
--- a/libmongoc/1.23.3/mongoc_client_get_server_status.html
+++ b/libmongoc/1.23.3/mongoc_client_get_server_status.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_uri.html b/libmongoc/1.23.3/mongoc_client_get_uri.html
index 55f54f36602e64cc7c597335a9a3995c78947733..7d1ab8a4e50cfcad111dc05717a364db0384931c 100644
--- a/libmongoc/1.23.3/mongoc_client_get_uri.html
+++ b/libmongoc/1.23.3/mongoc_client_get_uri.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_get_write_concern.html b/libmongoc/1.23.3/mongoc_client_get_write_concern.html
index 2ee6c064d3c8dd1c2bc3123b853e31e1905b6af5..0448bac0620c6e7ad1255e2fe4a2500d468e2b78 100644
--- a/libmongoc/1.23.3/mongoc_client_get_write_concern.html
+++ b/libmongoc/1.23.3/mongoc_client_get_write_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_new.html b/libmongoc/1.23.3/mongoc_client_new.html
index 28a5437d63a5afcd94d02fcb4089b8997e123e9c..eae7b26988a84513190ef1c0abaca89bc707492d 100644
--- a/libmongoc/1.23.3/mongoc_client_new.html
+++ b/libmongoc/1.23.3/mongoc_client_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_new_from_uri.html b/libmongoc/1.23.3/mongoc_client_new_from_uri.html
index 24d3ac6a79a52ca86e4cba64c57eb4334a93d2a5..0a107141df124394e7d316f4e730439a60831203 100644
--- a/libmongoc/1.23.3/mongoc_client_new_from_uri.html
+++ b/libmongoc/1.23.3/mongoc_client_new_from_uri.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_new_from_uri_with_error.html b/libmongoc/1.23.3/mongoc_client_new_from_uri_with_error.html
index c5ebf5d4626b43d1e8b5f6bc7f35df5d0756f254..b29b78ef78eea735bb0fd965ffe0a636ace21fc4 100644
--- a/libmongoc/1.23.3/mongoc_client_new_from_uri_with_error.html
+++ b/libmongoc/1.23.3/mongoc_client_new_from_uri_with_error.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_pool_destroy.html b/libmongoc/1.23.3/mongoc_client_pool_destroy.html
index 9c35716c6734a57967c803c22b273029591768dc..41afa64bbdc37222b40a20c591d5b0d4f598742f 100644
--- a/libmongoc/1.23.3/mongoc_client_pool_destroy.html
+++ b/libmongoc/1.23.3/mongoc_client_pool_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_pool_enable_auto_encryption.html b/libmongoc/1.23.3/mongoc_client_pool_enable_auto_encryption.html
index 4bfc48dd985b0eff80b0626d37dd5c866ef9ab89..42b58a136cacaa8bc6e563182ba6acaea59a3377 100644
--- a/libmongoc/1.23.3/mongoc_client_pool_enable_auto_encryption.html
+++ b/libmongoc/1.23.3/mongoc_client_pool_enable_auto_encryption.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_pool_max_size.html b/libmongoc/1.23.3/mongoc_client_pool_max_size.html
index 3c0ee28e0140a257aa54da5f68885e1bbf8b58ca..b1ecc3ab28f89610db2e96c17f538986f61794f4 100644
--- a/libmongoc/1.23.3/mongoc_client_pool_max_size.html
+++ b/libmongoc/1.23.3/mongoc_client_pool_max_size.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_pool_min_size.html b/libmongoc/1.23.3/mongoc_client_pool_min_size.html
index 7271b1aad4ed1d435100ffaeddef8d5e50851426..cdec9cd14362f2d0ca07c0c3562a0ee83a9ddd74 100644
--- a/libmongoc/1.23.3/mongoc_client_pool_min_size.html
+++ b/libmongoc/1.23.3/mongoc_client_pool_min_size.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_pool_new.html b/libmongoc/1.23.3/mongoc_client_pool_new.html
index 47f9462f95064943a341e3c8835abf89cfb379f9..47675ca148d71d499f908d6b78af001aeaa1fa51 100644
--- a/libmongoc/1.23.3/mongoc_client_pool_new.html
+++ b/libmongoc/1.23.3/mongoc_client_pool_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_pool_new_with_error.html b/libmongoc/1.23.3/mongoc_client_pool_new_with_error.html
index cb611ab19b3fe57ea6f34cc7b1cfbe74dc7481cf..63302b6e5553d4e787fe43f8aab3d3d0b09d13d2 100644
--- a/libmongoc/1.23.3/mongoc_client_pool_new_with_error.html
+++ b/libmongoc/1.23.3/mongoc_client_pool_new_with_error.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_pool_pop.html b/libmongoc/1.23.3/mongoc_client_pool_pop.html
index bc92961b58f1c2a37f540f2f8aba279c3106c8eb..46093f713503765f4e7e6f96df39af5d1462dbca 100644
--- a/libmongoc/1.23.3/mongoc_client_pool_pop.html
+++ b/libmongoc/1.23.3/mongoc_client_pool_pop.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_pool_push.html b/libmongoc/1.23.3/mongoc_client_pool_push.html
index 44908489a205dbec0c479e18860a4cf624ba1f01..bd6aec250568bce59d20de42d3acc5c51253f341 100644
--- a/libmongoc/1.23.3/mongoc_client_pool_push.html
+++ b/libmongoc/1.23.3/mongoc_client_pool_push.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_pool_set_apm_callbacks.html b/libmongoc/1.23.3/mongoc_client_pool_set_apm_callbacks.html
index 1df1f828fec867ac19bdb813746af85a98a018a1..4f3d50bb8088eb3aad475ffaf519b857f7ed952b 100644
--- a/libmongoc/1.23.3/mongoc_client_pool_set_apm_callbacks.html
+++ b/libmongoc/1.23.3/mongoc_client_pool_set_apm_callbacks.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_pool_set_appname.html b/libmongoc/1.23.3/mongoc_client_pool_set_appname.html
index 1c2387c854999f7bae86c33251145737b969b61f..1a898f70f7fd33dc76f0e02e1a6eb352fc070158 100644
--- a/libmongoc/1.23.3/mongoc_client_pool_set_appname.html
+++ b/libmongoc/1.23.3/mongoc_client_pool_set_appname.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_pool_set_error_api.html b/libmongoc/1.23.3/mongoc_client_pool_set_error_api.html
index a3a955e624cf5af1f059d40e749c59c34468e100..bf26a83d884972d1ac9dd51351b9e243a5b2dd7e 100644
--- a/libmongoc/1.23.3/mongoc_client_pool_set_error_api.html
+++ b/libmongoc/1.23.3/mongoc_client_pool_set_error_api.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_pool_set_server_api.html b/libmongoc/1.23.3/mongoc_client_pool_set_server_api.html
index 7ad134e3b708d26fafb6b04a1aebe4919f443cb9..2e2b091ef0c052af90c127746d7a2e17b8cbcfed 100644
--- a/libmongoc/1.23.3/mongoc_client_pool_set_server_api.html
+++ b/libmongoc/1.23.3/mongoc_client_pool_set_server_api.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_pool_set_ssl_opts.html b/libmongoc/1.23.3/mongoc_client_pool_set_ssl_opts.html
index 6f917b5b0a0b709ca3881437370cce071178f84a..28c15ecf13b21d0373f448bb07dff1f066ab5598 100644
--- a/libmongoc/1.23.3/mongoc_client_pool_set_ssl_opts.html
+++ b/libmongoc/1.23.3/mongoc_client_pool_set_ssl_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_pool_t.html b/libmongoc/1.23.3/mongoc_client_pool_t.html
index 9192405110e53507f30b6a460e15ccc1a96ac1e7..9e8437b6085375d8a02d580121c3f1d2561bf916 100644
--- a/libmongoc/1.23.3/mongoc_client_pool_t.html
+++ b/libmongoc/1.23.3/mongoc_client_pool_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_pool_try_pop.html b/libmongoc/1.23.3/mongoc_client_pool_try_pop.html
index 8b6819b2411806513e857c0469e79cf2d9a9fb34..4715ae114e2b615a12f86a73e3d79710922cb0a0 100644
--- a/libmongoc/1.23.3/mongoc_client_pool_try_pop.html
+++ b/libmongoc/1.23.3/mongoc_client_pool_try_pop.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_read_command_with_opts.html b/libmongoc/1.23.3/mongoc_client_read_command_with_opts.html
index 5b505f88672bee1eb3be9295f62f63db6a1afdf3..1bf106a7fd8739080853264d550e01aba6f39141 100644
--- a/libmongoc/1.23.3/mongoc_client_read_command_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_client_read_command_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_read_write_command_with_opts.html b/libmongoc/1.23.3/mongoc_client_read_write_command_with_opts.html
index 5267a721045e22babf30be8965c664c0e7c8af88..825577b353a7c57419711ea20ebb6a34b80d5e07 100644
--- a/libmongoc/1.23.3/mongoc_client_read_write_command_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_client_read_write_command_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_reset.html b/libmongoc/1.23.3/mongoc_client_reset.html
index 7fe517d61cf08629dd4b06ca03f2ba3a5d18cc05..3eac26d964cf7b607700f104944efeed97a4cb07 100644
--- a/libmongoc/1.23.3/mongoc_client_reset.html
+++ b/libmongoc/1.23.3/mongoc_client_reset.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_select_server.html b/libmongoc/1.23.3/mongoc_client_select_server.html
index bd13f43abadba2f0a728796064c356db1b3f4212..58e8d98403d404e772bc86829f700832dd7d4c30 100644
--- a/libmongoc/1.23.3/mongoc_client_select_server.html
+++ b/libmongoc/1.23.3/mongoc_client_select_server.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_abort_transaction.html b/libmongoc/1.23.3/mongoc_client_session_abort_transaction.html
index ec116f26ca1cdd82235c7f78129cbe5dd7938d56..80e8c729c4e485f81a3452e1d0d547e27c44bc8d 100644
--- a/libmongoc/1.23.3/mongoc_client_session_abort_transaction.html
+++ b/libmongoc/1.23.3/mongoc_client_session_abort_transaction.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_advance_cluster_time.html b/libmongoc/1.23.3/mongoc_client_session_advance_cluster_time.html
index 566fc659c12cb6bd6a755d45ec7c3ed792e2c956..11217be8d6844e8f33537a94dcb3b94bb8ccc853 100644
--- a/libmongoc/1.23.3/mongoc_client_session_advance_cluster_time.html
+++ b/libmongoc/1.23.3/mongoc_client_session_advance_cluster_time.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_advance_operation_time.html b/libmongoc/1.23.3/mongoc_client_session_advance_operation_time.html
index 79a6101a5b6027c54a7b057510cb1cbca7179e32..51521fbe7cb809efc2e2bf7175b6fcc1b2b54ce4 100644
--- a/libmongoc/1.23.3/mongoc_client_session_advance_operation_time.html
+++ b/libmongoc/1.23.3/mongoc_client_session_advance_operation_time.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_append.html b/libmongoc/1.23.3/mongoc_client_session_append.html
index d92948ac9fc5f47523cf855f14fafcd2385240d2..15ee54d2de9a01ac058ede3cadf18798cd443960 100644
--- a/libmongoc/1.23.3/mongoc_client_session_append.html
+++ b/libmongoc/1.23.3/mongoc_client_session_append.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_commit_transaction.html b/libmongoc/1.23.3/mongoc_client_session_commit_transaction.html
index 150556ad0b375880d31f685f33633e3a8bf8079d..84f39b969ccc6d1613c7f052036112ee1852fbfb 100644
--- a/libmongoc/1.23.3/mongoc_client_session_commit_transaction.html
+++ b/libmongoc/1.23.3/mongoc_client_session_commit_transaction.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_destroy.html b/libmongoc/1.23.3/mongoc_client_session_destroy.html
index 71715953ab0610d149cbb93e570ef9bdea6343e2..1ad47441f55e91bb839114d717f3aba32bb9c326 100644
--- a/libmongoc/1.23.3/mongoc_client_session_destroy.html
+++ b/libmongoc/1.23.3/mongoc_client_session_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_get_client.html b/libmongoc/1.23.3/mongoc_client_session_get_client.html
index b2d132d2863921be96254fb37f3443c069ff68f0..94846c26ccd466da0804ed85a8bc546ac9118a81 100644
--- a/libmongoc/1.23.3/mongoc_client_session_get_client.html
+++ b/libmongoc/1.23.3/mongoc_client_session_get_client.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_get_cluster_time.html b/libmongoc/1.23.3/mongoc_client_session_get_cluster_time.html
index 897d0611b3d0b2c2ed9f2393231025a446c75f6e..8732e6a66d2c14ce66bc91a0dfcc4318d9a924b1 100644
--- a/libmongoc/1.23.3/mongoc_client_session_get_cluster_time.html
+++ b/libmongoc/1.23.3/mongoc_client_session_get_cluster_time.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_get_dirty.html b/libmongoc/1.23.3/mongoc_client_session_get_dirty.html
index 1c86e03668698a8da674cc447a6fe831fb4b7d1f..c10469c242ef01a9625e18bc07d1d2b9319a69ca 100644
--- a/libmongoc/1.23.3/mongoc_client_session_get_dirty.html
+++ b/libmongoc/1.23.3/mongoc_client_session_get_dirty.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_get_lsid.html b/libmongoc/1.23.3/mongoc_client_session_get_lsid.html
index f59cc73b493d7cd1a657449376749a1aed25c10d..7801434f996f34d1cd3c127365bbe56df54dc80c 100644
--- a/libmongoc/1.23.3/mongoc_client_session_get_lsid.html
+++ b/libmongoc/1.23.3/mongoc_client_session_get_lsid.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_get_operation_time.html b/libmongoc/1.23.3/mongoc_client_session_get_operation_time.html
index 6b9a4139b132844fc37e5d77b2bcfa00bb99515c..1df1247e577de56cc815b497e492202f869fe9d0 100644
--- a/libmongoc/1.23.3/mongoc_client_session_get_operation_time.html
+++ b/libmongoc/1.23.3/mongoc_client_session_get_operation_time.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_get_opts.html b/libmongoc/1.23.3/mongoc_client_session_get_opts.html
index 0a10ec8913956c9fc0327bf7cecec6108ecd4566..55e452dffd21882f9b19b412d4defc61c36296c1 100644
--- a/libmongoc/1.23.3/mongoc_client_session_get_opts.html
+++ b/libmongoc/1.23.3/mongoc_client_session_get_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_get_server_id.html b/libmongoc/1.23.3/mongoc_client_session_get_server_id.html
index 8b985819ffe38486e7abda76d418cf7b42ee1742..4b5c08f4de452dc42c2c966a1980a10abade4df4 100644
--- a/libmongoc/1.23.3/mongoc_client_session_get_server_id.html
+++ b/libmongoc/1.23.3/mongoc_client_session_get_server_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_get_transaction_state.html b/libmongoc/1.23.3/mongoc_client_session_get_transaction_state.html
index 865c777dc366219e0405dbe92d88817ee5f09a19..529ebdfae3aa3d2c826b67535185a9c47c05aa4b 100644
--- a/libmongoc/1.23.3/mongoc_client_session_get_transaction_state.html
+++ b/libmongoc/1.23.3/mongoc_client_session_get_transaction_state.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_in_transaction.html b/libmongoc/1.23.3/mongoc_client_session_in_transaction.html
index 2ce6560d6df2ab198083fbbd0ce6ebbd15a2e23a..d6610302d78c62041d6155cecda8473e4bbd4f99 100644
--- a/libmongoc/1.23.3/mongoc_client_session_in_transaction.html
+++ b/libmongoc/1.23.3/mongoc_client_session_in_transaction.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_start_transaction.html b/libmongoc/1.23.3/mongoc_client_session_start_transaction.html
index 8470f54ce57228837ab70704a66ab7b72c586950..e4644ed549e2be5a8cbaa5a30a4b9ed84aa87ef3 100644
--- a/libmongoc/1.23.3/mongoc_client_session_start_transaction.html
+++ b/libmongoc/1.23.3/mongoc_client_session_start_transaction.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_t.html b/libmongoc/1.23.3/mongoc_client_session_t.html
index a14002c1008f91332af8e8be38bb7b7408e02946..11010187663a974f18bc435ee92935ce4e39b4b8 100644
--- a/libmongoc/1.23.3/mongoc_client_session_t.html
+++ b/libmongoc/1.23.3/mongoc_client_session_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_with_transaction.html b/libmongoc/1.23.3/mongoc_client_session_with_transaction.html
index a46ab26ec85682fc63e9e771179587a72887626e..d93efa9df4cb34f6a7e2291cee606f2c07783a55 100644
--- a/libmongoc/1.23.3/mongoc_client_session_with_transaction.html
+++ b/libmongoc/1.23.3/mongoc_client_session_with_transaction.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_session_with_transaction_cb_t.html b/libmongoc/1.23.3/mongoc_client_session_with_transaction_cb_t.html
index d6b21542d768e0590d9f68dcbb61b549353111b5..9b4860af72f7059e48c1c5574eee1e12d1fe8dbb 100644
--- a/libmongoc/1.23.3/mongoc_client_session_with_transaction_cb_t.html
+++ b/libmongoc/1.23.3/mongoc_client_session_with_transaction_cb_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_set_apm_callbacks.html b/libmongoc/1.23.3/mongoc_client_set_apm_callbacks.html
index 86faaa8ca2be04c475e175fe4154364111de83b6..f3739df0e3097d88622c2eec47574898f80a7d4c 100644
--- a/libmongoc/1.23.3/mongoc_client_set_apm_callbacks.html
+++ b/libmongoc/1.23.3/mongoc_client_set_apm_callbacks.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_set_appname.html b/libmongoc/1.23.3/mongoc_client_set_appname.html
index a0332cc5171684f8b0d9e2e58d9341643f20471b..4d90869440e460a959e8bdbad03280eae7507daf 100644
--- a/libmongoc/1.23.3/mongoc_client_set_appname.html
+++ b/libmongoc/1.23.3/mongoc_client_set_appname.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_set_error_api.html b/libmongoc/1.23.3/mongoc_client_set_error_api.html
index 434c4b52febf81fe8bab8db24892d51315369e4a..0e35d3eabe73ee38ba4af907ec46c1a7987216ca 100644
--- a/libmongoc/1.23.3/mongoc_client_set_error_api.html
+++ b/libmongoc/1.23.3/mongoc_client_set_error_api.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_set_read_concern.html b/libmongoc/1.23.3/mongoc_client_set_read_concern.html
index 8c2e51c9398ddd124b2162b64b32cd7f21cf280b..42eb15681002d386b9a8a69880ae2542be30e3d4 100644
--- a/libmongoc/1.23.3/mongoc_client_set_read_concern.html
+++ b/libmongoc/1.23.3/mongoc_client_set_read_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_set_read_prefs.html b/libmongoc/1.23.3/mongoc_client_set_read_prefs.html
index 8830147716ccc7b91b125a47802c51ebc6330e20..a57a453154f0c16e9bc2db9db4757ba4209e4c11 100644
--- a/libmongoc/1.23.3/mongoc_client_set_read_prefs.html
+++ b/libmongoc/1.23.3/mongoc_client_set_read_prefs.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_set_server_api.html b/libmongoc/1.23.3/mongoc_client_set_server_api.html
index 0d18dd5aabd56e465fb790b8dba83c40b62bd598..e4ba2b3d3bc198bc9f9106c1c9354d1e24579319 100644
--- a/libmongoc/1.23.3/mongoc_client_set_server_api.html
+++ b/libmongoc/1.23.3/mongoc_client_set_server_api.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_set_ssl_opts.html b/libmongoc/1.23.3/mongoc_client_set_ssl_opts.html
index 75f53b8010693bcbb8fcc2c56589298a11328588..ad43d2da572e3559226be3609b5c1ed7cf6b0ca3 100644
--- a/libmongoc/1.23.3/mongoc_client_set_ssl_opts.html
+++ b/libmongoc/1.23.3/mongoc_client_set_ssl_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_set_stream_initiator.html b/libmongoc/1.23.3/mongoc_client_set_stream_initiator.html
index b870e518e18642c5ea0e1656f94234cc13aef760..1bab226a00667814db47dc0bd4b25d31959e4849 100644
--- a/libmongoc/1.23.3/mongoc_client_set_stream_initiator.html
+++ b/libmongoc/1.23.3/mongoc_client_set_stream_initiator.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_set_write_concern.html b/libmongoc/1.23.3/mongoc_client_set_write_concern.html
index ad75c69a18e721ee51ff61c3166fb55790aafc79..a4cbd0918730cdb09dbdf2423d2592255bc1ab31 100644
--- a/libmongoc/1.23.3/mongoc_client_set_write_concern.html
+++ b/libmongoc/1.23.3/mongoc_client_set_write_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_start_session.html b/libmongoc/1.23.3/mongoc_client_start_session.html
index ac71add6830ba51271663935b98210f8273454a5..b62d6560df5498fb040d0cbeb1a20b9074070070 100644
--- a/libmongoc/1.23.3/mongoc_client_start_session.html
+++ b/libmongoc/1.23.3/mongoc_client_start_session.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_t.html b/libmongoc/1.23.3/mongoc_client_t.html
index d91fb6632ded82e5fb710da004364dea05659e8d..34662fe83f3741e010d8c28e8bbf8856e9f5c79f 100644
--- a/libmongoc/1.23.3/mongoc_client_t.html
+++ b/libmongoc/1.23.3/mongoc_client_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_watch.html b/libmongoc/1.23.3/mongoc_client_watch.html
index 781b8b44730ee84530cc0bd0c5578c43d7a507f8..8ca40f0eb9c5854ac6f2e416c0d9bd04cab34484 100644
--- a/libmongoc/1.23.3/mongoc_client_watch.html
+++ b/libmongoc/1.23.3/mongoc_client_watch.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_client_write_command_with_opts.html b/libmongoc/1.23.3/mongoc_client_write_command_with_opts.html
index 0219f6bacf817d1bf476e1620883a6aec5da1469..5c5adbac95ff0916e458589428e2824aea8cad73 100644
--- a/libmongoc/1.23.3/mongoc_client_write_command_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_client_write_command_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_aggregate.html b/libmongoc/1.23.3/mongoc_collection_aggregate.html
index fc45e48b2e6446004a1e65e4ddacbc9635e1b5a6..1216f86bf886dd6b0ad24ebe884d729fb7f07fab 100644
--- a/libmongoc/1.23.3/mongoc_collection_aggregate.html
+++ b/libmongoc/1.23.3/mongoc_collection_aggregate.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_command.html b/libmongoc/1.23.3/mongoc_collection_command.html
index 59f9d1b4e5674b369e58020d1225b599b6293ef4..65b840beb1c6db934566fe2265e32aecdc620686 100644
--- a/libmongoc/1.23.3/mongoc_collection_command.html
+++ b/libmongoc/1.23.3/mongoc_collection_command.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_command_simple.html b/libmongoc/1.23.3/mongoc_collection_command_simple.html
index f327ae98287bfce90270a0ba1ca71370099183f8..ef54d1f74c07c5b59496e66135ce6885b1f91bd9 100644
--- a/libmongoc/1.23.3/mongoc_collection_command_simple.html
+++ b/libmongoc/1.23.3/mongoc_collection_command_simple.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_command_with_opts.html b/libmongoc/1.23.3/mongoc_collection_command_with_opts.html
index 2ac26c5367212bcb4369892dcc8d491190fa34e3..6c65ef9cfeae53cecdcd9f8f3d61db1d4db68182 100644
--- a/libmongoc/1.23.3/mongoc_collection_command_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_collection_command_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_copy.html b/libmongoc/1.23.3/mongoc_collection_copy.html
index 05adf014e71056fdbc76fa273957265a4028a38a..c3d65932a1d24a0b5886fc10acc4e725cd1da29b 100644
--- a/libmongoc/1.23.3/mongoc_collection_copy.html
+++ b/libmongoc/1.23.3/mongoc_collection_copy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_count.html b/libmongoc/1.23.3/mongoc_collection_count.html
index f045ad7e43f75bbb391f3ee7a9719e5d4365cf11..99827c34f5033066e145b616f3dadd15818e7cb7 100644
--- a/libmongoc/1.23.3/mongoc_collection_count.html
+++ b/libmongoc/1.23.3/mongoc_collection_count.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_count_documents.html b/libmongoc/1.23.3/mongoc_collection_count_documents.html
index 2139391c5e260a92afa1898dd2461e781a335e3b..ca5369dd75b0d0fd7b76cb02b5d9cf1cc073a948 100644
--- a/libmongoc/1.23.3/mongoc_collection_count_documents.html
+++ b/libmongoc/1.23.3/mongoc_collection_count_documents.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_count_with_opts.html b/libmongoc/1.23.3/mongoc_collection_count_with_opts.html
index 1ead773013a3b0d1cc00d9f05eda907d43fdfe88..ef5f34c50f7c1c597ca8e491399818fcf8912137 100644
--- a/libmongoc/1.23.3/mongoc_collection_count_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_collection_count_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_create_bulk_operation.html b/libmongoc/1.23.3/mongoc_collection_create_bulk_operation.html
index f341905bfc7b028f8652c3a53b98a1e6f7dce36a..0f49b91f84c55ef34069a30f56da147a5d83984e 100644
--- a/libmongoc/1.23.3/mongoc_collection_create_bulk_operation.html
+++ b/libmongoc/1.23.3/mongoc_collection_create_bulk_operation.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_create_bulk_operation_with_opts.html b/libmongoc/1.23.3/mongoc_collection_create_bulk_operation_with_opts.html
index 170c708aa1d36930e6ae884bdf4426d1a3167c0a..6daa694f89557452f7a64be4c8c01b4c3c1dbf3c 100644
--- a/libmongoc/1.23.3/mongoc_collection_create_bulk_operation_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_collection_create_bulk_operation_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_create_index.html b/libmongoc/1.23.3/mongoc_collection_create_index.html
index 6e64fc96c4c2ae1a274d78624bd8188af1000ec1..0ec83a1e215b41a578cf2bff27c933edd45585b3 100644
--- a/libmongoc/1.23.3/mongoc_collection_create_index.html
+++ b/libmongoc/1.23.3/mongoc_collection_create_index.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_create_index_with_opts.html b/libmongoc/1.23.3/mongoc_collection_create_index_with_opts.html
index 410cd4db831931430e1476ea5fceafec9da2d21a..754f72f02048f3d32480196eb500d39de4534432 100644
--- a/libmongoc/1.23.3/mongoc_collection_create_index_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_collection_create_index_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_delete.html b/libmongoc/1.23.3/mongoc_collection_delete.html
index 9a18492d7470b6337f24c6123cdbb4c120978a64..e26be530d84d1b296ead13d3719f317ba2f1aa06 100644
--- a/libmongoc/1.23.3/mongoc_collection_delete.html
+++ b/libmongoc/1.23.3/mongoc_collection_delete.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_delete_many.html b/libmongoc/1.23.3/mongoc_collection_delete_many.html
index fe806e7ae6f86fee0e8dd05ce41762f81040c39a..cce27908de1adf55f91e3cabf2955df7a4fe8fe5 100644
--- a/libmongoc/1.23.3/mongoc_collection_delete_many.html
+++ b/libmongoc/1.23.3/mongoc_collection_delete_many.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_delete_one.html b/libmongoc/1.23.3/mongoc_collection_delete_one.html
index 70d4bad4baa31b4de38cbc610dd9756b1f698be9..6458fa24b2344cfea897823446e03a135245e9e9 100644
--- a/libmongoc/1.23.3/mongoc_collection_delete_one.html
+++ b/libmongoc/1.23.3/mongoc_collection_delete_one.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_destroy.html b/libmongoc/1.23.3/mongoc_collection_destroy.html
index 3e24b4ac9a65306e93738ab6f9e5fdc500e503d0..35080e87b90d9a125f888a9f75f248ac0ab9dce6 100644
--- a/libmongoc/1.23.3/mongoc_collection_destroy.html
+++ b/libmongoc/1.23.3/mongoc_collection_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_drop.html b/libmongoc/1.23.3/mongoc_collection_drop.html
index bcfbae6c0f1405ee3f8e8a3340c8fe3423d433e1..465914c0c917b5f2b7fb17bcee0013a302a45208 100644
--- a/libmongoc/1.23.3/mongoc_collection_drop.html
+++ b/libmongoc/1.23.3/mongoc_collection_drop.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_drop_index.html b/libmongoc/1.23.3/mongoc_collection_drop_index.html
index a4574ed069a26cd2ec708bb0b526910f11dc4100..bc4899bbdfa9cf5109222828f0ff0302dfd7839b 100644
--- a/libmongoc/1.23.3/mongoc_collection_drop_index.html
+++ b/libmongoc/1.23.3/mongoc_collection_drop_index.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_drop_index_with_opts.html b/libmongoc/1.23.3/mongoc_collection_drop_index_with_opts.html
index ba5b663e508093245a2e1dde32ab982a59570541..406973edb5192cc855c96c3589396d32d9affcd2 100644
--- a/libmongoc/1.23.3/mongoc_collection_drop_index_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_collection_drop_index_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_drop_with_opts.html b/libmongoc/1.23.3/mongoc_collection_drop_with_opts.html
index 662f57060525871b964e5651c1da708c63d3ecbe..958965f62d8c4d51d0a9aedf44000a11a7125a73 100644
--- a/libmongoc/1.23.3/mongoc_collection_drop_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_collection_drop_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_ensure_index.html b/libmongoc/1.23.3/mongoc_collection_ensure_index.html
index e5ef84300caea364f61a72088460187a93981fd2..e786e2976ded6c0cf64066bc29cee65a083cb766 100644
--- a/libmongoc/1.23.3/mongoc_collection_ensure_index.html
+++ b/libmongoc/1.23.3/mongoc_collection_ensure_index.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_estimated_document_count.html b/libmongoc/1.23.3/mongoc_collection_estimated_document_count.html
index f9b1940f99a35e98a719f1f654c2a93a9b9bb9e7..db2d7e8c9b7a4b73b4c8adbe94da9fe4447e70ec 100644
--- a/libmongoc/1.23.3/mongoc_collection_estimated_document_count.html
+++ b/libmongoc/1.23.3/mongoc_collection_estimated_document_count.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_find.html b/libmongoc/1.23.3/mongoc_collection_find.html
index ab462991ce9f63d9fef7779e1622a1b9044b24a0..915c6560db99432f8074ea3c46b4a9ac79547c22 100644
--- a/libmongoc/1.23.3/mongoc_collection_find.html
+++ b/libmongoc/1.23.3/mongoc_collection_find.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_find_and_modify.html b/libmongoc/1.23.3/mongoc_collection_find_and_modify.html
index 8d0262f95b15f2a0d03dc2685b847a4f3aafcefc..5ff081d0e5f0176a41272d4e134ce3e39f4bc9a8 100644
--- a/libmongoc/1.23.3/mongoc_collection_find_and_modify.html
+++ b/libmongoc/1.23.3/mongoc_collection_find_and_modify.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_find_and_modify_with_opts.html b/libmongoc/1.23.3/mongoc_collection_find_and_modify_with_opts.html
index b759aa31660e349ffe00eea224c2ab7c84924615..e18f04f5a9225f8c71b54f6c834e5aecb8bb30be 100644
--- a/libmongoc/1.23.3/mongoc_collection_find_and_modify_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_collection_find_and_modify_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_find_indexes.html b/libmongoc/1.23.3/mongoc_collection_find_indexes.html
index 2421515a3561e105c6b6443d00455b07ecd4b1c9..93f3a234c2b55816b8034af50896a535cbc58fde 100644
--- a/libmongoc/1.23.3/mongoc_collection_find_indexes.html
+++ b/libmongoc/1.23.3/mongoc_collection_find_indexes.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_find_indexes_with_opts.html b/libmongoc/1.23.3/mongoc_collection_find_indexes_with_opts.html
index f7d158152c55f622b0fe32f5097541fc6a52a281..bfd6f59f89bf16b03ae40efd22af69ab8ac11a08 100644
--- a/libmongoc/1.23.3/mongoc_collection_find_indexes_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_collection_find_indexes_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_find_with_opts.html b/libmongoc/1.23.3/mongoc_collection_find_with_opts.html
index b6a3a3a10cc94d8b8d10c0b75084533fd138fc30..371359a8da0cd145df8da31f5b1cc450f2c30e37 100644
--- a/libmongoc/1.23.3/mongoc_collection_find_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_collection_find_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_get_last_error.html b/libmongoc/1.23.3/mongoc_collection_get_last_error.html
index 75ef284986f42a4313d32a38055cbc2a9c867d99..901014a0d862db299b517dfa9fb797f60440fc9f 100644
--- a/libmongoc/1.23.3/mongoc_collection_get_last_error.html
+++ b/libmongoc/1.23.3/mongoc_collection_get_last_error.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_get_name.html b/libmongoc/1.23.3/mongoc_collection_get_name.html
index d92f981a96b12142d3fdf3e41f7f863ee3e59a48..5749503b8581b2c494a5712832b10f8a4a2a317d 100644
--- a/libmongoc/1.23.3/mongoc_collection_get_name.html
+++ b/libmongoc/1.23.3/mongoc_collection_get_name.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_get_read_concern.html b/libmongoc/1.23.3/mongoc_collection_get_read_concern.html
index 96ef74756e348561ed2678c8cea6b6cb8f61e731..5b635ac94dfab4b36d4a70995e36dc393f651496 100644
--- a/libmongoc/1.23.3/mongoc_collection_get_read_concern.html
+++ b/libmongoc/1.23.3/mongoc_collection_get_read_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_get_read_prefs.html b/libmongoc/1.23.3/mongoc_collection_get_read_prefs.html
index ec82ab12a403bcaf023b85cf4cd005f8b5dbe294..5f1ec3787f9a29e2d364013ecd5c1b11bede2f78 100644
--- a/libmongoc/1.23.3/mongoc_collection_get_read_prefs.html
+++ b/libmongoc/1.23.3/mongoc_collection_get_read_prefs.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_get_write_concern.html b/libmongoc/1.23.3/mongoc_collection_get_write_concern.html
index c56e567ffecd99badc492bdddcdf48dfd801ed3a..5d94af1dfe7b801b4a1b0cca47fe38502777f469 100644
--- a/libmongoc/1.23.3/mongoc_collection_get_write_concern.html
+++ b/libmongoc/1.23.3/mongoc_collection_get_write_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_insert.html b/libmongoc/1.23.3/mongoc_collection_insert.html
index 606854d973f8e85fb947b6e588a2fe85f42341f5..1dc22526a1ad15cbfcf872f53a709c1a45a5901e 100644
--- a/libmongoc/1.23.3/mongoc_collection_insert.html
+++ b/libmongoc/1.23.3/mongoc_collection_insert.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_insert_bulk.html b/libmongoc/1.23.3/mongoc_collection_insert_bulk.html
index e9d2488eb4348d3c02ca43434b161d41d38936f5..2e3c591881a129761e591fe2df7136c67a26bff3 100644
--- a/libmongoc/1.23.3/mongoc_collection_insert_bulk.html
+++ b/libmongoc/1.23.3/mongoc_collection_insert_bulk.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_insert_many.html b/libmongoc/1.23.3/mongoc_collection_insert_many.html
index 0d6d0f807a4a685fc62bf560fbb07d50e5bdc2d8..3484424ef3bb0fe0022e7433bd43bd413736327f 100644
--- a/libmongoc/1.23.3/mongoc_collection_insert_many.html
+++ b/libmongoc/1.23.3/mongoc_collection_insert_many.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_insert_one.html b/libmongoc/1.23.3/mongoc_collection_insert_one.html
index aad4cb21b0b12ddabb1299cac1192a7c944c3f26..8a73458817e4468df8adaf92cff9880d0f4559bb 100644
--- a/libmongoc/1.23.3/mongoc_collection_insert_one.html
+++ b/libmongoc/1.23.3/mongoc_collection_insert_one.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_keys_to_index_string.html b/libmongoc/1.23.3/mongoc_collection_keys_to_index_string.html
index 759c7f6ba4149a75934180bf12af743898946106..73791162771c4997ad72f424d1a1771a4c282815 100644
--- a/libmongoc/1.23.3/mongoc_collection_keys_to_index_string.html
+++ b/libmongoc/1.23.3/mongoc_collection_keys_to_index_string.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_read_command_with_opts.html b/libmongoc/1.23.3/mongoc_collection_read_command_with_opts.html
index c8af8edc87564fe8e24175fafae340c3a5f78bd8..33d3437d65e0258b05360cf1c0c7544092500c38 100644
--- a/libmongoc/1.23.3/mongoc_collection_read_command_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_collection_read_command_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_read_write_command_with_opts.html b/libmongoc/1.23.3/mongoc_collection_read_write_command_with_opts.html
index c855685cc1c7876664c89f30f511abf22431b39d..d8f7b3676107524e510ada0ba31f2e8127e5e979 100644
--- a/libmongoc/1.23.3/mongoc_collection_read_write_command_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_collection_read_write_command_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_remove.html b/libmongoc/1.23.3/mongoc_collection_remove.html
index d07ba84a3fceff43ebe41c1869a286a172492d7e..4075f91932684a4e41df00a66ce6b71a76700839 100644
--- a/libmongoc/1.23.3/mongoc_collection_remove.html
+++ b/libmongoc/1.23.3/mongoc_collection_remove.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_rename.html b/libmongoc/1.23.3/mongoc_collection_rename.html
index 5ebd14cbe87eefa1b9d26d16097cfa0e2d9ddc7c..c0aecf1ce7c09affe04879edb18f4a01137ac3d7 100644
--- a/libmongoc/1.23.3/mongoc_collection_rename.html
+++ b/libmongoc/1.23.3/mongoc_collection_rename.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_rename_with_opts.html b/libmongoc/1.23.3/mongoc_collection_rename_with_opts.html
index 85a8416597f6cbc26ed42c7219d2b1915d93982f..06a5482da03ca591d0c3e231aa20d9ecf8d3e517 100644
--- a/libmongoc/1.23.3/mongoc_collection_rename_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_collection_rename_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_replace_one.html b/libmongoc/1.23.3/mongoc_collection_replace_one.html
index d655673bbbfcab0297776e7e785394451e10fb89..392288184f81378f101fa2d37027e4300be65a86 100644
--- a/libmongoc/1.23.3/mongoc_collection_replace_one.html
+++ b/libmongoc/1.23.3/mongoc_collection_replace_one.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_save.html b/libmongoc/1.23.3/mongoc_collection_save.html
index 509ec7aaea4661e25576c9cc1521e0651021089b..a378e25d831537463e4aca26461d3116627ab0ba 100644
--- a/libmongoc/1.23.3/mongoc_collection_save.html
+++ b/libmongoc/1.23.3/mongoc_collection_save.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_set_read_concern.html b/libmongoc/1.23.3/mongoc_collection_set_read_concern.html
index c170b673b8a875cfb9f8e36626c4ee1e6e398521..46cd40aba1da01593cd0f0e801c95c6054fcad9d 100644
--- a/libmongoc/1.23.3/mongoc_collection_set_read_concern.html
+++ b/libmongoc/1.23.3/mongoc_collection_set_read_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_set_read_prefs.html b/libmongoc/1.23.3/mongoc_collection_set_read_prefs.html
index 6b7dfb5ef0fdec493190b1c48d959e0d64b68bb3..26b89a83bd16969533d2e3258e9979a0fdd5b8f3 100644
--- a/libmongoc/1.23.3/mongoc_collection_set_read_prefs.html
+++ b/libmongoc/1.23.3/mongoc_collection_set_read_prefs.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_set_write_concern.html b/libmongoc/1.23.3/mongoc_collection_set_write_concern.html
index 5bc810edd154654d4c327e9e89dd55941bdb800f..c355d311905ee0fb055b14caa6a768d564cf7a8e 100644
--- a/libmongoc/1.23.3/mongoc_collection_set_write_concern.html
+++ b/libmongoc/1.23.3/mongoc_collection_set_write_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_stats.html b/libmongoc/1.23.3/mongoc_collection_stats.html
index 118546fd68e500f6c06be168ccb8d25323c8dfc6..d207c122bbb8c3d924708b47e6a045fcacf0c677 100644
--- a/libmongoc/1.23.3/mongoc_collection_stats.html
+++ b/libmongoc/1.23.3/mongoc_collection_stats.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_t.html b/libmongoc/1.23.3/mongoc_collection_t.html
index f4722a328f893908599c0e89900f2ecf5ea59b15..f99ed404303f63edf95ac7b5d68c3fa8dfebe1ba 100644
--- a/libmongoc/1.23.3/mongoc_collection_t.html
+++ b/libmongoc/1.23.3/mongoc_collection_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_update.html b/libmongoc/1.23.3/mongoc_collection_update.html
index dcef20508d06c5ced2834b24977a81d2a0576039..fc6775da2ad37f290d54c1d76d8f1f8dfa5d34c7 100644
--- a/libmongoc/1.23.3/mongoc_collection_update.html
+++ b/libmongoc/1.23.3/mongoc_collection_update.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_update_many.html b/libmongoc/1.23.3/mongoc_collection_update_many.html
index 42a2ffebe64f556338e60161fa29ffdc4fc5982c..162c30e1b5ef927c1f0d55d7bfb74cd63c5755a7 100644
--- a/libmongoc/1.23.3/mongoc_collection_update_many.html
+++ b/libmongoc/1.23.3/mongoc_collection_update_many.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_update_one.html b/libmongoc/1.23.3/mongoc_collection_update_one.html
index daa23b593d14700c191c4fb3a9fb75e435ce11f6..a38516a615aa4011f8d1d5f8a8f02aaf1f0ac4a1 100644
--- a/libmongoc/1.23.3/mongoc_collection_update_one.html
+++ b/libmongoc/1.23.3/mongoc_collection_update_one.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_validate.html b/libmongoc/1.23.3/mongoc_collection_validate.html
index c247ed4d5f48d8b0e8954589326cd4d8b58d5e19..aaf5abdda69fb808b17219631fdc2599031e167b 100644
--- a/libmongoc/1.23.3/mongoc_collection_validate.html
+++ b/libmongoc/1.23.3/mongoc_collection_validate.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_watch.html b/libmongoc/1.23.3/mongoc_collection_watch.html
index 5ab742c3ea09c6fb9195b0c4e8df799b1cfdadd9..9ffddc6c3151815f47251c6d5e8a193d46d31ed5 100644
--- a/libmongoc/1.23.3/mongoc_collection_watch.html
+++ b/libmongoc/1.23.3/mongoc_collection_watch.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_collection_write_command_with_opts.html b/libmongoc/1.23.3/mongoc_collection_write_command_with_opts.html
index f61b8108abd9f6f642eabfb85d7233f1c6ac5b1c..57fdea5b31c9e91d0ce6a9907d6578c128814788 100644
--- a/libmongoc/1.23.3/mongoc_collection_write_command_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_collection_write_command_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_clone.html b/libmongoc/1.23.3/mongoc_cursor_clone.html
index 8390c19ace2f17479439e816cc3a3c5e78fbc624..9528ae4c3f5a2a8f0a57e505bb892c37f1ffa8fa 100644
--- a/libmongoc/1.23.3/mongoc_cursor_clone.html
+++ b/libmongoc/1.23.3/mongoc_cursor_clone.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_current.html b/libmongoc/1.23.3/mongoc_cursor_current.html
index 346f8d92e73c7e3121310660461b0552f545b03a..c66ba957dc18de6ea72f15af0494e057a77c238e 100644
--- a/libmongoc/1.23.3/mongoc_cursor_current.html
+++ b/libmongoc/1.23.3/mongoc_cursor_current.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_destroy.html b/libmongoc/1.23.3/mongoc_cursor_destroy.html
index 64365c128a7dc180164b3eaf17ba6642741e9db2..06335039f00dfc843e925d68adaa577fcd9fa2cf 100644
--- a/libmongoc/1.23.3/mongoc_cursor_destroy.html
+++ b/libmongoc/1.23.3/mongoc_cursor_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_error.html b/libmongoc/1.23.3/mongoc_cursor_error.html
index 19a8acb96a6aae46278936636ef9593d5c8c257e..a8f670fb61299de415953eaf8ed248a20362f34d 100644
--- a/libmongoc/1.23.3/mongoc_cursor_error.html
+++ b/libmongoc/1.23.3/mongoc_cursor_error.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_error_document.html b/libmongoc/1.23.3/mongoc_cursor_error_document.html
index 4c5c454a185da4c3ac4274828ebb6c20a34b52ec..7898f7edf6a73a84390dca6f78b6c23d4a0c3808 100644
--- a/libmongoc/1.23.3/mongoc_cursor_error_document.html
+++ b/libmongoc/1.23.3/mongoc_cursor_error_document.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_get_batch_size.html b/libmongoc/1.23.3/mongoc_cursor_get_batch_size.html
index b9e08882eba32eaa9ce20c155520a410cdad87ad..dc0b1d02bf7e3b192bb17efdb5909abbe0e0abf8 100644
--- a/libmongoc/1.23.3/mongoc_cursor_get_batch_size.html
+++ b/libmongoc/1.23.3/mongoc_cursor_get_batch_size.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_get_hint.html b/libmongoc/1.23.3/mongoc_cursor_get_hint.html
index 93fdbf029c07d0ba278a43bce6ff752a1da11486..4ebf35f13f2a66860231dd15bea4284573c3fcbd 100644
--- a/libmongoc/1.23.3/mongoc_cursor_get_hint.html
+++ b/libmongoc/1.23.3/mongoc_cursor_get_hint.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_get_host.html b/libmongoc/1.23.3/mongoc_cursor_get_host.html
index 7c5fee47cb8f82c618c959f2e5201603beb03531..604f2a997d960883dcb5bebf2fa1becf8ddfc475 100644
--- a/libmongoc/1.23.3/mongoc_cursor_get_host.html
+++ b/libmongoc/1.23.3/mongoc_cursor_get_host.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_get_id.html b/libmongoc/1.23.3/mongoc_cursor_get_id.html
index 4e187626213fbd4c5ab23b8f25f0b7accb5b5675..898b2df3f9c682489afb339aa3ef8cbc8a4d5892 100644
--- a/libmongoc/1.23.3/mongoc_cursor_get_id.html
+++ b/libmongoc/1.23.3/mongoc_cursor_get_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_get_limit.html b/libmongoc/1.23.3/mongoc_cursor_get_limit.html
index 810740aabef389ad44146f67594ec6a814b27c08..4e98548b2909f334ab0c2eca214a4eaa35dbe963 100644
--- a/libmongoc/1.23.3/mongoc_cursor_get_limit.html
+++ b/libmongoc/1.23.3/mongoc_cursor_get_limit.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_get_max_await_time_ms.html b/libmongoc/1.23.3/mongoc_cursor_get_max_await_time_ms.html
index 79249eedcb4ba0aa3bb80fbb5779b89c01cee48a..16ec7fafd334eb0b0f906bec97cbd984ece3d2ba 100644
--- a/libmongoc/1.23.3/mongoc_cursor_get_max_await_time_ms.html
+++ b/libmongoc/1.23.3/mongoc_cursor_get_max_await_time_ms.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_is_alive.html b/libmongoc/1.23.3/mongoc_cursor_is_alive.html
index 24b72b9f0e02169bd9ec9ed4a60446850e74474e..10b4e9add9844c489e3b34f17279bf5dbdb3d8f8 100644
--- a/libmongoc/1.23.3/mongoc_cursor_is_alive.html
+++ b/libmongoc/1.23.3/mongoc_cursor_is_alive.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_more.html b/libmongoc/1.23.3/mongoc_cursor_more.html
index 118f81d6cb562efbd0ea1f37aa083c629ae12db9..67234cc5c57c12e3b2c01b02a6965ed4b71b1d1b 100644
--- a/libmongoc/1.23.3/mongoc_cursor_more.html
+++ b/libmongoc/1.23.3/mongoc_cursor_more.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_new_from_command_reply.html b/libmongoc/1.23.3/mongoc_cursor_new_from_command_reply.html
index fdc74c6d24a8a6eb862080f4c7d2d9dabe927c46..25b3adef6531e1817f6aa826eeac910f9d347607 100644
--- a/libmongoc/1.23.3/mongoc_cursor_new_from_command_reply.html
+++ b/libmongoc/1.23.3/mongoc_cursor_new_from_command_reply.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_new_from_command_reply_with_opts.html b/libmongoc/1.23.3/mongoc_cursor_new_from_command_reply_with_opts.html
index 36c4db526d0d12d447220bf8d7581f452d6b0ec9..4f19da75658b1f73918dfa5d1441313e0fdad41c 100644
--- a/libmongoc/1.23.3/mongoc_cursor_new_from_command_reply_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_cursor_new_from_command_reply_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_next.html b/libmongoc/1.23.3/mongoc_cursor_next.html
index 7e77fb4ad25544c74b298b56a2f6ff062bbecea6..165b1f45a2329ad88193bf0fa2e67e4b69d0f774 100644
--- a/libmongoc/1.23.3/mongoc_cursor_next.html
+++ b/libmongoc/1.23.3/mongoc_cursor_next.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_set_batch_size.html b/libmongoc/1.23.3/mongoc_cursor_set_batch_size.html
index 4a40550ae2959a3545dc9e130fa9ace4d2d83f08..b67d1a1dadbddaeb6649d37c59d802b3b09322a8 100644
--- a/libmongoc/1.23.3/mongoc_cursor_set_batch_size.html
+++ b/libmongoc/1.23.3/mongoc_cursor_set_batch_size.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_set_hint.html b/libmongoc/1.23.3/mongoc_cursor_set_hint.html
index 94dad9a902dc6760d8c87615a72b678dd69c434f..2c91c1d8e357c8a4551907315f2034b5acfe55f3 100644
--- a/libmongoc/1.23.3/mongoc_cursor_set_hint.html
+++ b/libmongoc/1.23.3/mongoc_cursor_set_hint.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_set_limit.html b/libmongoc/1.23.3/mongoc_cursor_set_limit.html
index 833629d14afaac079c58c3e1114a638f7227cf28..8f6ec777001cac1da2e8a091ae3356b82c0660a8 100644
--- a/libmongoc/1.23.3/mongoc_cursor_set_limit.html
+++ b/libmongoc/1.23.3/mongoc_cursor_set_limit.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_set_max_await_time_ms.html b/libmongoc/1.23.3/mongoc_cursor_set_max_await_time_ms.html
index ab90ca55b08d6ef62b1782ef873ce0622a40e3eb..40ca1c0f36d07786ac4c14a20a2c69d55d13a1a7 100644
--- a/libmongoc/1.23.3/mongoc_cursor_set_max_await_time_ms.html
+++ b/libmongoc/1.23.3/mongoc_cursor_set_max_await_time_ms.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_cursor_t.html b/libmongoc/1.23.3/mongoc_cursor_t.html
index 0809de2a4f08760c91c1b39b46c5eee6f0242f77..198e1162dbd1a42bd771283f46cce6ea1bbf1876 100644
--- a/libmongoc/1.23.3/mongoc_cursor_t.html
+++ b/libmongoc/1.23.3/mongoc_cursor_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_add_user.html b/libmongoc/1.23.3/mongoc_database_add_user.html
index 072cf7b3656e9a3b8d21aa7dc8bef53a62a5a29c..4f3d8b40a6f8cdcf5ba03f75723b761cd23ba236 100644
--- a/libmongoc/1.23.3/mongoc_database_add_user.html
+++ b/libmongoc/1.23.3/mongoc_database_add_user.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_aggregate.html b/libmongoc/1.23.3/mongoc_database_aggregate.html
index 7b941047e7a25b929f252743f357ff56dcd1a689..376e1b418e94a1262e754be6f9a861871c26efc5 100644
--- a/libmongoc/1.23.3/mongoc_database_aggregate.html
+++ b/libmongoc/1.23.3/mongoc_database_aggregate.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_command.html b/libmongoc/1.23.3/mongoc_database_command.html
index 81680a3478fa2a4cc4dded1f308dcbdc7564651c..d748a7d0ff6a468911e5ff24d07a95963e170a0d 100644
--- a/libmongoc/1.23.3/mongoc_database_command.html
+++ b/libmongoc/1.23.3/mongoc_database_command.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_command_simple.html b/libmongoc/1.23.3/mongoc_database_command_simple.html
index a650bcf34d2b2b0ec1294559a64af040464f3d2e..7ea49fe62e2ec3c9b4afe6be238ce5f6546be7ff 100644
--- a/libmongoc/1.23.3/mongoc_database_command_simple.html
+++ b/libmongoc/1.23.3/mongoc_database_command_simple.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_command_with_opts.html b/libmongoc/1.23.3/mongoc_database_command_with_opts.html
index b394fdcd38de35002e897c3515146e1a1f4ceb64..8f5ce38bb1e1df9917cffdc7b401a88784c988ff 100644
--- a/libmongoc/1.23.3/mongoc_database_command_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_database_command_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_copy.html b/libmongoc/1.23.3/mongoc_database_copy.html
index a03c22c687c76511386e9353b86ee37c378eae50..79c03831412378b69f313313adcd5506442c0972 100644
--- a/libmongoc/1.23.3/mongoc_database_copy.html
+++ b/libmongoc/1.23.3/mongoc_database_copy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_create_collection.html b/libmongoc/1.23.3/mongoc_database_create_collection.html
index c3e39f23ff1f47c0eb4da6df7430bafea9601c4d..e1bac5ffe2ef20e6e9e38b3182bb58e29ee4af6f 100644
--- a/libmongoc/1.23.3/mongoc_database_create_collection.html
+++ b/libmongoc/1.23.3/mongoc_database_create_collection.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_destroy.html b/libmongoc/1.23.3/mongoc_database_destroy.html
index f5e763d8533ca44734afd9f288836e6983aa17f4..c449b5d5fc2919204c7459c07539f5610c95381b 100644
--- a/libmongoc/1.23.3/mongoc_database_destroy.html
+++ b/libmongoc/1.23.3/mongoc_database_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_drop.html b/libmongoc/1.23.3/mongoc_database_drop.html
index 9981399be4290b8877673837b180d80ed01d93fd..0a758856ac1fce1a0084ad154085b21b6726b77e 100644
--- a/libmongoc/1.23.3/mongoc_database_drop.html
+++ b/libmongoc/1.23.3/mongoc_database_drop.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_drop_with_opts.html b/libmongoc/1.23.3/mongoc_database_drop_with_opts.html
index b326d83649363e4243a519bab0566475260ef60d..84177aa0fa8d7acd8e81a81f9a96c77c69907f05 100644
--- a/libmongoc/1.23.3/mongoc_database_drop_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_database_drop_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_find_collections.html b/libmongoc/1.23.3/mongoc_database_find_collections.html
index 4001bc391b7c9add83d2824df4037dd81b2de1e7..35e87a50a9227473f19bd02b09a50a67ba106236 100644
--- a/libmongoc/1.23.3/mongoc_database_find_collections.html
+++ b/libmongoc/1.23.3/mongoc_database_find_collections.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_find_collections_with_opts.html b/libmongoc/1.23.3/mongoc_database_find_collections_with_opts.html
index 9bf56a49ad1d650caaadf47844f66702c3994cc2..740e2535660793e2f8f6f41b4163c1f2af3fc04e 100644
--- a/libmongoc/1.23.3/mongoc_database_find_collections_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_database_find_collections_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_get_collection.html b/libmongoc/1.23.3/mongoc_database_get_collection.html
index c95d08a7687c054a0e07d55f1a31028d368c008f..093010015bfefcc55091c599272946ccd318bad3 100644
--- a/libmongoc/1.23.3/mongoc_database_get_collection.html
+++ b/libmongoc/1.23.3/mongoc_database_get_collection.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_get_collection_names.html b/libmongoc/1.23.3/mongoc_database_get_collection_names.html
index ac025ef3480b8db2a524fab420edf0123f695b7c..ce27e737ed50adbfa1480b34ecd107d4f607941e 100644
--- a/libmongoc/1.23.3/mongoc_database_get_collection_names.html
+++ b/libmongoc/1.23.3/mongoc_database_get_collection_names.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_get_collection_names_with_opts.html b/libmongoc/1.23.3/mongoc_database_get_collection_names_with_opts.html
index 25aad03f4160306ebb21b52cd76af3a63934d6cb..fff53231dcaed19aff1a64d88acfa67d08ab3ee6 100644
--- a/libmongoc/1.23.3/mongoc_database_get_collection_names_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_database_get_collection_names_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_get_name.html b/libmongoc/1.23.3/mongoc_database_get_name.html
index 23ea253dfb858fd0e0f8538961189044b34f632a..05bff2b535bb32fcfb1299eb43b97c5250b10e0b 100644
--- a/libmongoc/1.23.3/mongoc_database_get_name.html
+++ b/libmongoc/1.23.3/mongoc_database_get_name.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_get_read_concern.html b/libmongoc/1.23.3/mongoc_database_get_read_concern.html
index 6a3f7df26ba025505adb31096973b4833e8cf308..1d8271aabf5542e9556bb1243ff65b32e5f218b9 100644
--- a/libmongoc/1.23.3/mongoc_database_get_read_concern.html
+++ b/libmongoc/1.23.3/mongoc_database_get_read_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_get_read_prefs.html b/libmongoc/1.23.3/mongoc_database_get_read_prefs.html
index 77f4ead406c26f8cc249ed135ce9ee32400c39cf..806c88aef008836bb08530a8306a698f39860ea5 100644
--- a/libmongoc/1.23.3/mongoc_database_get_read_prefs.html
+++ b/libmongoc/1.23.3/mongoc_database_get_read_prefs.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_get_write_concern.html b/libmongoc/1.23.3/mongoc_database_get_write_concern.html
index 2135ed117fb8398d0e882de5906e7521f048e21e..fdab28a8c9be7c4e4e10c2356937e300e244d7ef 100644
--- a/libmongoc/1.23.3/mongoc_database_get_write_concern.html
+++ b/libmongoc/1.23.3/mongoc_database_get_write_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_has_collection.html b/libmongoc/1.23.3/mongoc_database_has_collection.html
index aee991e9af60e3c22d81d157cfe9ec9891bac5a4..47c016987cac1cf13bdd162bfdaa0ed27c40fb0e 100644
--- a/libmongoc/1.23.3/mongoc_database_has_collection.html
+++ b/libmongoc/1.23.3/mongoc_database_has_collection.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_read_command_with_opts.html b/libmongoc/1.23.3/mongoc_database_read_command_with_opts.html
index 768f4b3364e607bbbb84744b0a3cbe28dc39fef8..35597217352238aff1bcf159275a45ebff5eafb5 100644
--- a/libmongoc/1.23.3/mongoc_database_read_command_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_database_read_command_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_read_write_command_with_opts.html b/libmongoc/1.23.3/mongoc_database_read_write_command_with_opts.html
index c3dddfb5fc285c14837e5596100372bc9aceada5..15408f8998adbec54c85b4747b54f5bc0ec3c49d 100644
--- a/libmongoc/1.23.3/mongoc_database_read_write_command_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_database_read_write_command_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_remove_all_users.html b/libmongoc/1.23.3/mongoc_database_remove_all_users.html
index ba1a51d588181c7b716297e2b4c058295926a8fe..f35982128126c43e05ceb322ee8324994fc63c14 100644
--- a/libmongoc/1.23.3/mongoc_database_remove_all_users.html
+++ b/libmongoc/1.23.3/mongoc_database_remove_all_users.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_remove_user.html b/libmongoc/1.23.3/mongoc_database_remove_user.html
index fe8c37abe91024f86fdd03cc530bf7e52d9d7535..96c07eaadb684d1e21870d0e1c66bb750a172a0e 100644
--- a/libmongoc/1.23.3/mongoc_database_remove_user.html
+++ b/libmongoc/1.23.3/mongoc_database_remove_user.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_set_read_concern.html b/libmongoc/1.23.3/mongoc_database_set_read_concern.html
index 84b3d9f39b44f0541154fb2db6091e136322e940..92e4f67d4568703e8f6cae300b9ac335b67f311f 100644
--- a/libmongoc/1.23.3/mongoc_database_set_read_concern.html
+++ b/libmongoc/1.23.3/mongoc_database_set_read_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_set_read_prefs.html b/libmongoc/1.23.3/mongoc_database_set_read_prefs.html
index aab05001b88738ca6ea0199a3f78c7836ce45f24..4bed8e13d6c423f8b9bcf3a4622d46cb5cd1676b 100644
--- a/libmongoc/1.23.3/mongoc_database_set_read_prefs.html
+++ b/libmongoc/1.23.3/mongoc_database_set_read_prefs.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_set_write_concern.html b/libmongoc/1.23.3/mongoc_database_set_write_concern.html
index 178309ed502b62789b8d0c30d3c2ddd4aae40cc4..a1e6b00ff79ad05b14b40f340f5309c655bd9b97 100644
--- a/libmongoc/1.23.3/mongoc_database_set_write_concern.html
+++ b/libmongoc/1.23.3/mongoc_database_set_write_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_t.html b/libmongoc/1.23.3/mongoc_database_t.html
index 597c6f3f689bbcf012dd3c5bcf9a141caf1c8be9..15b4260f11f1dccfb2015770c989dcd96f2f4711 100644
--- a/libmongoc/1.23.3/mongoc_database_t.html
+++ b/libmongoc/1.23.3/mongoc_database_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_watch.html b/libmongoc/1.23.3/mongoc_database_watch.html
index c56df95bec21dbd1fbca844765a412e99f7001ea..971345d7f479c6fb5c0fb431fde227931d5be7c8 100644
--- a/libmongoc/1.23.3/mongoc_database_watch.html
+++ b/libmongoc/1.23.3/mongoc_database_watch.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_database_write_command_with_opts.html b/libmongoc/1.23.3/mongoc_database_write_command_with_opts.html
index 3bce87e1ccb71f9454ea3e769d447012bde742d2..af79ecbc524fa9e08749d50692dc639cfa296edf 100644
--- a/libmongoc/1.23.3/mongoc_database_write_command_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_database_write_command_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_delete_flags_t.html b/libmongoc/1.23.3/mongoc_delete_flags_t.html
index d50fd49c4f6718f5a9ee349c36b9b6d9dd65bd32..890551a8cddb2d36425f113665ee9f6f05f020ba 100644
--- a/libmongoc/1.23.3/mongoc_delete_flags_t.html
+++ b/libmongoc/1.23.3/mongoc_delete_flags_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_error_has_label.html b/libmongoc/1.23.3/mongoc_error_has_label.html
index 34af6aed78595ca75154bbd1bcc189486696e74b..d934336e6652fe97fff4b115312e72fd12a6b5ed 100644
--- a/libmongoc/1.23.3/mongoc_error_has_label.html
+++ b/libmongoc/1.23.3/mongoc_error_has_label.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_append.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_append.html
index 81f005f7655eb08bfc210bb88175aa44a07208e0..5b97f583441a53fc036fb3852d13d67c0493b830 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_append.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_append.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_destroy.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_destroy.html
index 81e2bec436e9694fe13ac6175a783289114d6ad7..37065024e11dff7c88101d749c47eff82187a337 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_destroy.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_bypass_document_validation.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_bypass_document_validation.html
index 7f8944aec45c468fe0be1ad707ab7ef0bf990e8a..04845704c8c13112059c0f2d5af5431fbce0b30f 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_bypass_document_validation.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_bypass_document_validation.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_fields.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_fields.html
index ddc2bfb3bc3402939eacc22fb00c10060fbdd5cb..90bb5ef0fde6037dd2e0853e90b6cb9c41785637 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_fields.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_fields.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_flags.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_flags.html
index 06c94cc448c0938c41b376987ef21615e1033b68..117df894c3578e113bf4ca4dc51c8feefb330bb1 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_flags.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_flags.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_max_time_ms.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_max_time_ms.html
index 4641e269beafa7f64a3487184545785bcc32b145..84394b2d1ea9420e4edf367d0291e97e0adfc37b 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_max_time_ms.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_max_time_ms.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_sort.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_sort.html
index be8603936eadc96d2e1e0f05e72e86ab743b3e6e..746d5937da69b0a1b3c3b3d403baaab673b35816 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_sort.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_sort.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_update.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_update.html
index 1001c0f7c1f11d2d97dc0a1f2bfe054da7232804..57763e64a6f1c7744ee9ed44e102668c31c33eea 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_update.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_get_update.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_new.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_new.html
index 967335bc62bd9e568c9f9ba2acef734a0149104c..6af338ee38cf9bbff4d9102eb9a9a1d5d9e2cd92 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_new.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_bypass_document_validation.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_bypass_document_validation.html
index bdd04dc7dae7feef984b9be36e28b39383522bee..851362eb9c62ee37bbff6dd15d65b97e25a21ca8 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_bypass_document_validation.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_bypass_document_validation.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_fields.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_fields.html
index 3da90ad51e3de66f57bef8dd1f134cc14764f224..ff8e3a0d6b89afae63087c703d6d05aaf8b1a7ec 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_fields.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_fields.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_flags.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_flags.html
index c3bace67b245bda5608561abe993d290ec70b331..039871105242a791f1f35d6234e7aba1593a2caf 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_flags.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_flags.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_max_time_ms.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_max_time_ms.html
index 801d05c3503019bcf2bea4cd5067438f649e83f3..275913fd9c89ca45185a7cdf41ef769dd944fa74 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_max_time_ms.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_max_time_ms.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_sort.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_sort.html
index 53729ed24ed08717cd47a4180e219f7437d3dfcf..21e28ee2903c65aa29ca74722f678e677d89c642 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_sort.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_sort.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_update.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_update.html
index e4ad3dffea505c4a4ad46a604950f9b381226399..446578fba6e951c39dd00799b01a3cccc6d42bc5 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_update.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_set_update.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_find_and_modify_opts_t.html b/libmongoc/1.23.3/mongoc_find_and_modify_opts_t.html
index c5bd9d5ddf693970464faa2d26402f38ddf7d372..240a4f06f58c2963aa5f59b955ddac213b82a33a 100644
--- a/libmongoc/1.23.3/mongoc_find_and_modify_opts_t.html
+++ b/libmongoc/1.23.3/mongoc_find_and_modify_opts_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_get_major_version.html b/libmongoc/1.23.3/mongoc_get_major_version.html
index fac3878d5d8134b04cfd7ca5bde4733bf5d3420b..485f19e2983302b6fe3780319a8c2be253de2706 100644
--- a/libmongoc/1.23.3/mongoc_get_major_version.html
+++ b/libmongoc/1.23.3/mongoc_get_major_version.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_get_micro_version.html b/libmongoc/1.23.3/mongoc_get_micro_version.html
index f66c2aa52b84fb61489b2429c5ad0423b9829414..1b5c0e6408d15fe4a519ac2788cb852bf9c386cf 100644
--- a/libmongoc/1.23.3/mongoc_get_micro_version.html
+++ b/libmongoc/1.23.3/mongoc_get_micro_version.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_get_minor_version.html b/libmongoc/1.23.3/mongoc_get_minor_version.html
index bc684dc4736310fc9a2ba976274c35b6e0e876df..4b1d8cbab044f154493ee42cf9406197b9253125 100644
--- a/libmongoc/1.23.3/mongoc_get_minor_version.html
+++ b/libmongoc/1.23.3/mongoc_get_minor_version.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_get_version.html b/libmongoc/1.23.3/mongoc_get_version.html
index f8edc1932e71458e4c4046a9c1d919585ae2e77d..fc2b27ddea8b9b6185f313ff12dacab1cdd45a9f 100644
--- a/libmongoc/1.23.3/mongoc_get_version.html
+++ b/libmongoc/1.23.3/mongoc_get_version.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_bucket_abort_upload.html b/libmongoc/1.23.3/mongoc_gridfs_bucket_abort_upload.html
index 59983b1bf09596308c7bfdee317bab145177711d..fb2af192e28a71ecfca54aa1545f17b5dbeb1982 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_bucket_abort_upload.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_bucket_abort_upload.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_bucket_delete_by_id.html b/libmongoc/1.23.3/mongoc_gridfs_bucket_delete_by_id.html
index 4ff58e28530419090783e6959f82a72249c02b99..3923e5ae45a722cd7f18da9b99d3d95364fb77c0 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_bucket_delete_by_id.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_bucket_delete_by_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_bucket_destroy.html b/libmongoc/1.23.3/mongoc_gridfs_bucket_destroy.html
index 7ada248b0d5cf645f43816476ac58345f4518b68..ec60b559a1c0cbe3e2519885abc442511d719461 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_bucket_destroy.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_bucket_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_bucket_download_to_stream.html b/libmongoc/1.23.3/mongoc_gridfs_bucket_download_to_stream.html
index 21d3e070b4dabf154110b3bf6a03cb3876fddbc9..b70fec3aac0769abcdfd16985fc96795dc406f6a 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_bucket_download_to_stream.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_bucket_download_to_stream.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_bucket_find.html b/libmongoc/1.23.3/mongoc_gridfs_bucket_find.html
index 017a57295351f35cc180c748427938098df227f7..17587a531eed895695a1e6b2f4549a1a1357f2a2 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_bucket_find.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_bucket_find.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_bucket_new.html b/libmongoc/1.23.3/mongoc_gridfs_bucket_new.html
index 6536e23a686cb2bae607415e2061ac9b74d6d0f9..4d1752c359a77d192b7764443a6a599733d40878 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_bucket_new.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_bucket_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_bucket_open_download_stream.html b/libmongoc/1.23.3/mongoc_gridfs_bucket_open_download_stream.html
index 92e6c3d53c0d6853b5719428343e476a47c30f8d..5c59b723fc3bbf250d1eb828d99d60943e9f0b7b 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_bucket_open_download_stream.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_bucket_open_download_stream.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_bucket_open_upload_stream.html b/libmongoc/1.23.3/mongoc_gridfs_bucket_open_upload_stream.html
index ab41616b7027e3e15e486f125c28ae641a806975..0b1235918f54e71bc5c5559c069422bdc5cebc8f 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_bucket_open_upload_stream.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_bucket_open_upload_stream.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_bucket_open_upload_stream_with_id.html b/libmongoc/1.23.3/mongoc_gridfs_bucket_open_upload_stream_with_id.html
index d8512236497d8967773ae129b6e618ff3dedcab1..c81464ac8dfb055207b2e00b807ee874a0709d4d 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_bucket_open_upload_stream_with_id.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_bucket_open_upload_stream_with_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_bucket_stream_error.html b/libmongoc/1.23.3/mongoc_gridfs_bucket_stream_error.html
index cc6ec833024c184c276df571adfda1de467eb394..9c06ba4d650a380717d64ed2a6a2cbe7137acb39 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_bucket_stream_error.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_bucket_stream_error.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_bucket_t.html b/libmongoc/1.23.3/mongoc_gridfs_bucket_t.html
index 1817dad20ecbe596202a688d97e4188bb189f9d1..3aa76d9bd74b9feab5b74ffe95cc303ac2380794 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_bucket_t.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_bucket_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_bucket_upload_from_stream.html b/libmongoc/1.23.3/mongoc_gridfs_bucket_upload_from_stream.html
index 2d735d51644c6babd8c43c6ab62c762223942968..b7f440d01ba71c5ef23104e1395a3043b56c9036 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_bucket_upload_from_stream.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_bucket_upload_from_stream.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_bucket_upload_from_stream_with_id.html b/libmongoc/1.23.3/mongoc_gridfs_bucket_upload_from_stream_with_id.html
index 228b7618f7fbe5163b8962a078e99e44a530cd18..21d85299cd549a0ef9e7d1f2cdf5aaaa914a9f82 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_bucket_upload_from_stream_with_id.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_bucket_upload_from_stream_with_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_create_file.html b/libmongoc/1.23.3/mongoc_gridfs_create_file.html
index 3437ab8be92292e82a88ede8e1a6a623cea85777..8ae34b6dedd10342bc597e303c876cbe5021c1d5 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_create_file.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_create_file.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_create_file_from_stream.html b/libmongoc/1.23.3/mongoc_gridfs_create_file_from_stream.html
index 24f5945873db39eae4bf3eab72b380b16ec81e83..d85084eab1964d3cb821d8cb3ca7c7988b07919a 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_create_file_from_stream.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_create_file_from_stream.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_destroy.html b/libmongoc/1.23.3/mongoc_gridfs_destroy.html
index 6f4bd31063b83706046f360c53e99cc50e4ba87f..905608c34f8e3e4df4608d8d9c200ad6d3c49b37 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_destroy.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_drop.html b/libmongoc/1.23.3/mongoc_gridfs_drop.html
index deb8f0122d5b345acce09933e7a75e11881a8e27..d548e0334b6321738a3c2a989e1048e7fea2577e 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_drop.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_drop.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_destroy.html b/libmongoc/1.23.3/mongoc_gridfs_file_destroy.html
index 4328a7b493a3a189ebdde769b126e4d9f7d34da3..f03ba4cde72a093ea2bb683dd327fa1d90b69d95 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_destroy.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_error.html b/libmongoc/1.23.3/mongoc_gridfs_file_error.html
index 09e19ee0eee351d7617dffcc07d814f1f8086afc..6073b6ebd4de0aa20ffea8f55fc83e63051656bd 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_error.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_error.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_get_aliases.html b/libmongoc/1.23.3/mongoc_gridfs_file_get_aliases.html
index c2047d6398bad3842c8624c83932b984310222ca..6cfef5c70e0b87d4e5828dc0e843933c621509cb 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_get_aliases.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_get_aliases.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_get_chunk_size.html b/libmongoc/1.23.3/mongoc_gridfs_file_get_chunk_size.html
index c645555e99d31ab4471d6f2ea86d62649ea9ade1..a3e2aab86bf504204bd815d73a5c2125e57187b9 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_get_chunk_size.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_get_chunk_size.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_get_content_type.html b/libmongoc/1.23.3/mongoc_gridfs_file_get_content_type.html
index 0da9fd441ab7d7ede521fb39c9665f206d752498..c9b3318effb663e0a13782625a978c3531f535d9 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_get_content_type.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_get_content_type.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_get_filename.html b/libmongoc/1.23.3/mongoc_gridfs_file_get_filename.html
index 6c43bee270a8646080f69b4ed838ed28040633bf..5be603507d25a3390c62dcd5a19bbab0d589e8c7 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_get_filename.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_get_filename.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_get_id.html b/libmongoc/1.23.3/mongoc_gridfs_file_get_id.html
index f5e629ed45361e348f74eaed01056348975f1b9a..cb50a3138901435ebc19e021e70ffbdc2c51e81c 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_get_id.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_get_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_get_length.html b/libmongoc/1.23.3/mongoc_gridfs_file_get_length.html
index b25fbb8e65aa47bd0eea5fc02526629dda56283e..08b8eccddd72bcd2675e04e58f0c9b460c2fccea 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_get_length.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_get_length.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_get_md5.html b/libmongoc/1.23.3/mongoc_gridfs_file_get_md5.html
index 9305efcd7bdd73a2eb68f15056cb96ddc23f5cd6..61fce09c2336111eac2bfd105218e98e29a37e61 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_get_md5.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_get_md5.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_get_metadata.html b/libmongoc/1.23.3/mongoc_gridfs_file_get_metadata.html
index da83b231a5da92ebe8ee71293845e00333bc0e7a..6e51b4932cd89e3ed7ba0d7171b3dbad71d7bbfb 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_get_metadata.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_get_metadata.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_get_upload_date.html b/libmongoc/1.23.3/mongoc_gridfs_file_get_upload_date.html
index b6820f8d0e24bfff4df88156245d6991067f09bf..b0016139d95bbe7ddc558e1b32ff2c358250b082 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_get_upload_date.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_get_upload_date.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_list_destroy.html b/libmongoc/1.23.3/mongoc_gridfs_file_list_destroy.html
index 81c2fcc8dad0e9c78f9fd5337c76f8e04c9cca5b..b2c9d8374b5c0c7ccf55a7bbd37fd1c1cd1327db 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_list_destroy.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_list_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_list_error.html b/libmongoc/1.23.3/mongoc_gridfs_file_list_error.html
index de6b9e820d253aa332cbd61b8d35f4752b7ada44..040fe5e3259e2907edb64f99ea297cf57c4d02a3 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_list_error.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_list_error.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_list_next.html b/libmongoc/1.23.3/mongoc_gridfs_file_list_next.html
index e78dcc9f6fc8efb70b6d5569c0baa0562d4283df..0e6570c5b644d9f6066469dcccb4bac88dcde98f 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_list_next.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_list_next.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_list_t.html b/libmongoc/1.23.3/mongoc_gridfs_file_list_t.html
index 3b2b70945a959e9ec756ca81551e322702c9fce9..741b44ddb37f568b73951fbe419b26ef95f0832c 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_list_t.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_list_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_opt_t.html b/libmongoc/1.23.3/mongoc_gridfs_file_opt_t.html
index 4c29f10d78813187687305652ecf3e89e0ea3219..cad46930e84d54b97beace6265ac4c243c2dc4f9 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_opt_t.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_opt_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_readv.html b/libmongoc/1.23.3/mongoc_gridfs_file_readv.html
index 94a3b223b04a5e8e8c8bc6bd57f4c0c62e1a38d2..8a054113e143251d90983d062809daad038e361d 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_readv.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_readv.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_remove.html b/libmongoc/1.23.3/mongoc_gridfs_file_remove.html
index 63b58e042f0b5e05e7ca38c8cf8ba85ffd14fbed..406c8ac83da948fdbee3d409db53b77e3a8a4d5b 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_remove.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_remove.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_save.html b/libmongoc/1.23.3/mongoc_gridfs_file_save.html
index 5705f4bc1c402cd51bf0eae86179af8d048bff15..f802a10090559b84563edf0b7c41fc033fb78861 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_save.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_save.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_seek.html b/libmongoc/1.23.3/mongoc_gridfs_file_seek.html
index a6c4b6e925332ba422ec620b3dd651b977dd6133..d9f316f6d454ecb54f16e54980430352ec83726a 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_seek.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_seek.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_set_aliases.html b/libmongoc/1.23.3/mongoc_gridfs_file_set_aliases.html
index d8dce8a311c2cd938af07033400ad6832d6d32b4..1bf58055e83c7addc01e13065081cc017ebc77c4 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_set_aliases.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_set_aliases.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_set_content_type.html b/libmongoc/1.23.3/mongoc_gridfs_file_set_content_type.html
index b5b53b1f8defce5ec5050d16b447bd4784dda736..be9d5eb8f344636574514d76a65f8d4f9876c513 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_set_content_type.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_set_content_type.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_set_filename.html b/libmongoc/1.23.3/mongoc_gridfs_file_set_filename.html
index abf101c425fb20d6864da3af816f0a13eb249f41..00cf435273ca0ab7dae2fd24521358be08ee5693 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_set_filename.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_set_filename.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_set_id.html b/libmongoc/1.23.3/mongoc_gridfs_file_set_id.html
index adfdba38b8fd1a6b1e657868f3fccaf387be73eb..9e5f787f1de2e4df0bbf25e23576a9de41169704 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_set_id.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_set_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_set_md5.html b/libmongoc/1.23.3/mongoc_gridfs_file_set_md5.html
index 98b00da7ca0b1c08c92ca314cffa03a9f8b6ab11..a151835a94eff9f8c7af43cab94f656f07831bea 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_set_md5.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_set_md5.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_set_metadata.html b/libmongoc/1.23.3/mongoc_gridfs_file_set_metadata.html
index 58c619c56dca1f33bbebfe3172721aac7c1bfa74..1854627051dfce4c31af65d80cefac5a59f41d6b 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_set_metadata.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_set_metadata.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_t.html b/libmongoc/1.23.3/mongoc_gridfs_file_t.html
index 8bf308fd27d363b6dbf197dd7070cc0cab5e49e2..6e42457d8872bbe46529b74e41b5ed143052792b 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_t.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_tell.html b/libmongoc/1.23.3/mongoc_gridfs_file_tell.html
index 680097afd731ab529df49e15765ac0653e475325..c74078c50165287ce47d9b8948a4525b787b75ae 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_tell.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_tell.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_file_writev.html b/libmongoc/1.23.3/mongoc_gridfs_file_writev.html
index d5d356a86d2b5aed4765794c008d74522ca5ea43..1bd67b53de6ea515a318301ecca5fd5386efe32e 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_file_writev.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_file_writev.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_find.html b/libmongoc/1.23.3/mongoc_gridfs_find.html
index 60b3a4a82494a192e2c864070c180645c07a87ee..2cb78146450081c7259c172bd096e8dd07dc0962 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_find.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_find.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_find_one.html b/libmongoc/1.23.3/mongoc_gridfs_find_one.html
index 7995624436e9962dab0ae16d852abbd873972a51..3914a647335fa24cc911163632cf1053a374846b 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_find_one.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_find_one.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_find_one_by_filename.html b/libmongoc/1.23.3/mongoc_gridfs_find_one_by_filename.html
index 7d3db65ad611d7bafb2fe563f676400527724524..08b20e2ef624a052c033766bb1425d6e8d5a13f2 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_find_one_by_filename.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_find_one_by_filename.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_find_one_with_opts.html b/libmongoc/1.23.3/mongoc_gridfs_find_one_with_opts.html
index 352c6ec2fc8c40f3c93189152cf7104bb7657494..d2dd09a82d6f1363f64b6d06c12226b715c7e182 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_find_one_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_find_one_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_find_with_opts.html b/libmongoc/1.23.3/mongoc_gridfs_find_with_opts.html
index b85d49273d41b04a0520d512a5c4f6cdd261d20b..6b9d92bbb0d8ab9e5298ea9dead2658864624b59 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_find_with_opts.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_find_with_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_get_chunks.html b/libmongoc/1.23.3/mongoc_gridfs_get_chunks.html
index 0cd10d6330bf49f2262a27b0420fa9dc3a7c49ad..abe9d9c8378e8c69123011f9b27aedac561fe13d 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_get_chunks.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_get_chunks.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_get_files.html b/libmongoc/1.23.3/mongoc_gridfs_get_files.html
index f6d536120b0cce693afc2e54236d4c0ac96bca4b..90b5583d78f5b6edfb2eef01feb145176c740e6e 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_get_files.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_get_files.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_remove_by_filename.html b/libmongoc/1.23.3/mongoc_gridfs_remove_by_filename.html
index b3ee1308281f8ad27667a4db4ece1fa41655d6b6..3f42ff446d62dfd64d7f02e5df15e912e03229e2 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_remove_by_filename.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_remove_by_filename.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_gridfs_t.html b/libmongoc/1.23.3/mongoc_gridfs_t.html
index 5d706b18d487c7358e8d407f60e114144d8f7603..6d238bdf3cba857bc6e8dbb4b875c42c5044c1be 100644
--- a/libmongoc/1.23.3/mongoc_gridfs_t.html
+++ b/libmongoc/1.23.3/mongoc_gridfs_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_handshake_data_append.html b/libmongoc/1.23.3/mongoc_handshake_data_append.html
index af773b2a814115f69e9636009b7424a932338c9a..6f5bb4045b2bbda80c342b9b55de84015db2f9fa 100644
--- a/libmongoc/1.23.3/mongoc_handshake_data_append.html
+++ b/libmongoc/1.23.3/mongoc_handshake_data_append.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_host_list_t.html b/libmongoc/1.23.3/mongoc_host_list_t.html
index ac2aa150c776998fcfed77fb145bc9fd2964adf9..84553677f0c46d9baf1758fdc67c03f7796b4044 100644
--- a/libmongoc/1.23.3/mongoc_host_list_t.html
+++ b/libmongoc/1.23.3/mongoc_host_list_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_index_opt_geo_get_default.html b/libmongoc/1.23.3/mongoc_index_opt_geo_get_default.html
index e1fd25c0787af37bcfddf65f51e1f02d51fcd8cf..7bea17f25ce102e4f29837e0cf6e3d31620c2fad 100644
--- a/libmongoc/1.23.3/mongoc_index_opt_geo_get_default.html
+++ b/libmongoc/1.23.3/mongoc_index_opt_geo_get_default.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_index_opt_geo_init.html b/libmongoc/1.23.3/mongoc_index_opt_geo_init.html
index 4a1162bc71ef0dcc54379bdc299a58906df6abec..9b928f9ad392a8d5b54e32a8f88e9080d084de89 100644
--- a/libmongoc/1.23.3/mongoc_index_opt_geo_init.html
+++ b/libmongoc/1.23.3/mongoc_index_opt_geo_init.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_index_opt_geo_t.html b/libmongoc/1.23.3/mongoc_index_opt_geo_t.html
index 655fb2ccd05a1cd2f60955deca1bbc7e46b83a6c..a7373164e21cc4f788e4880a6751bc788d59647c 100644
--- a/libmongoc/1.23.3/mongoc_index_opt_geo_t.html
+++ b/libmongoc/1.23.3/mongoc_index_opt_geo_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_index_opt_get_default.html b/libmongoc/1.23.3/mongoc_index_opt_get_default.html
index 8fd349a6a9a22ac22b5385643ceb6a3a45c0b59e..ed1c5f91c32633ffaee77e8bbf95ad6e81935fba 100644
--- a/libmongoc/1.23.3/mongoc_index_opt_get_default.html
+++ b/libmongoc/1.23.3/mongoc_index_opt_get_default.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_index_opt_init.html b/libmongoc/1.23.3/mongoc_index_opt_init.html
index 2d4f706fec0433699a4e8193f619b945590e314d..46ae648838891bbb82209dccf243494a0399812d 100644
--- a/libmongoc/1.23.3/mongoc_index_opt_init.html
+++ b/libmongoc/1.23.3/mongoc_index_opt_init.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_index_opt_t.html b/libmongoc/1.23.3/mongoc_index_opt_t.html
index 77656c54325813dd448da3ef1a71f84e287f36b7..5350b43de6a6321940db283433985be0403da046 100644
--- a/libmongoc/1.23.3/mongoc_index_opt_t.html
+++ b/libmongoc/1.23.3/mongoc_index_opt_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_index_opt_wt_get_default.html b/libmongoc/1.23.3/mongoc_index_opt_wt_get_default.html
index bf658fb0de4c756e0c438b23029c13d61d8887f6..3bed070bcb46c9d872d17009fe0673bf9d81ddf8 100644
--- a/libmongoc/1.23.3/mongoc_index_opt_wt_get_default.html
+++ b/libmongoc/1.23.3/mongoc_index_opt_wt_get_default.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_index_opt_wt_init.html b/libmongoc/1.23.3/mongoc_index_opt_wt_init.html
index 872a112a79dd738a55df19565c64b6d70ec82860..c178540ff0e23b52bd950e7360907eac5e8930bd 100644
--- a/libmongoc/1.23.3/mongoc_index_opt_wt_init.html
+++ b/libmongoc/1.23.3/mongoc_index_opt_wt_init.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_index_opt_wt_t.html b/libmongoc/1.23.3/mongoc_index_opt_wt_t.html
index c04e69b0b1878224d482bada904ba2b3e33c3941..0a8af8a7ed2053020db03bcb468ddafc9aebcb39 100644
--- a/libmongoc/1.23.3/mongoc_index_opt_wt_t.html
+++ b/libmongoc/1.23.3/mongoc_index_opt_wt_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_init.html b/libmongoc/1.23.3/mongoc_init.html
index 5e2ce49df5d564dcbf4feb19cbd13191f3ee5a95..49af957ac18b876cf065f333e0d61d2b3e84e2c6 100644
--- a/libmongoc/1.23.3/mongoc_init.html
+++ b/libmongoc/1.23.3/mongoc_init.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_insert_flags_t.html b/libmongoc/1.23.3/mongoc_insert_flags_t.html
index ef337e10e590d224f7333df85456b654bb33ad14..6f22afcdc5a6a30eb338b327d359f9dc64e0d866 100644
--- a/libmongoc/1.23.3/mongoc_insert_flags_t.html
+++ b/libmongoc/1.23.3/mongoc_insert_flags_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_iovec_t.html b/libmongoc/1.23.3/mongoc_iovec_t.html
index ce6264721d11a96f49a6d09b72fb2896bea0c04a..426e15f618834a4e164fd0ec908f3163c47a2ebd 100644
--- a/libmongoc/1.23.3/mongoc_iovec_t.html
+++ b/libmongoc/1.23.3/mongoc_iovec_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_matcher_destroy.html b/libmongoc/1.23.3/mongoc_matcher_destroy.html
index e863b53a392ed8a7c5500233cbbe1b49c1df5616..22a91611e44351b4bab391ec4683aa29e3791fd9 100644
--- a/libmongoc/1.23.3/mongoc_matcher_destroy.html
+++ b/libmongoc/1.23.3/mongoc_matcher_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_matcher_match.html b/libmongoc/1.23.3/mongoc_matcher_match.html
index 616932a33013ce4180a0674d41ea52baa86767ba..faadca388311c3c2eb616cf07bb8822c31317029 100644
--- a/libmongoc/1.23.3/mongoc_matcher_match.html
+++ b/libmongoc/1.23.3/mongoc_matcher_match.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_matcher_new.html b/libmongoc/1.23.3/mongoc_matcher_new.html
index f5994caeea9c644700f071213b4aff91777e9e61..d903b92b44482b7988896bc000e4ce133a16fea0 100644
--- a/libmongoc/1.23.3/mongoc_matcher_new.html
+++ b/libmongoc/1.23.3/mongoc_matcher_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_matcher_t.html b/libmongoc/1.23.3/mongoc_matcher_t.html
index 767faac9aa40dc7b22e99fa2c30acdfd1cff6d8c..fff6ce19c191cc7ae81104df5675f24ed137a7d3 100644
--- a/libmongoc/1.23.3/mongoc_matcher_t.html
+++ b/libmongoc/1.23.3/mongoc_matcher_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_optional_copy.html b/libmongoc/1.23.3/mongoc_optional_copy.html
index 4293455c2b94ef5bb0bc424658f92fbfa14c7ec0..c790a417df4a40f1b2b956223ca8086204355c53 100644
--- a/libmongoc/1.23.3/mongoc_optional_copy.html
+++ b/libmongoc/1.23.3/mongoc_optional_copy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_optional_init.html b/libmongoc/1.23.3/mongoc_optional_init.html
index 6b86e878a65a010c7a9cc088c3f7d9e3dde81ce6..ea05605e8f894c16f28ad1888c72e77dd194d191 100644
--- a/libmongoc/1.23.3/mongoc_optional_init.html
+++ b/libmongoc/1.23.3/mongoc_optional_init.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_optional_is_set.html b/libmongoc/1.23.3/mongoc_optional_is_set.html
index a508c6783c17ab3895f2a172c5c4aee40fbbc7af..7c7ce5f6a2d43c216e145cc3ed091bd2d3cef50a 100644
--- a/libmongoc/1.23.3/mongoc_optional_is_set.html
+++ b/libmongoc/1.23.3/mongoc_optional_is_set.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_optional_set_value.html b/libmongoc/1.23.3/mongoc_optional_set_value.html
index da45ac223f868e95609248778db0762588ac4d95..343ad1cf54a9e27709ce7bf88a1cc51c47ac8ea1 100644
--- a/libmongoc/1.23.3/mongoc_optional_set_value.html
+++ b/libmongoc/1.23.3/mongoc_optional_set_value.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_optional_t.html b/libmongoc/1.23.3/mongoc_optional_t.html
index bb052f2aa1beaf45e764e28503592f2de5586b96..2d50ca06c3029fe7fc9d0ff591a4d007234cba4b 100644
--- a/libmongoc/1.23.3/mongoc_optional_t.html
+++ b/libmongoc/1.23.3/mongoc_optional_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_optional_value.html b/libmongoc/1.23.3/mongoc_optional_value.html
index 3bb71907f5c63dc64dfde2fffbf5a494dc1962d9..a7df2fd13c4e54453aded6a6ecedb4df4809e24b 100644
--- a/libmongoc/1.23.3/mongoc_optional_value.html
+++ b/libmongoc/1.23.3/mongoc_optional_value.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_query_flags_t.html b/libmongoc/1.23.3/mongoc_query_flags_t.html
index 83499ec435d954e668ce6e440d32a0510536d53a..4e759c434f10ad078b7a47ba617e90952d79f145 100644
--- a/libmongoc/1.23.3/mongoc_query_flags_t.html
+++ b/libmongoc/1.23.3/mongoc_query_flags_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_rand.html b/libmongoc/1.23.3/mongoc_rand.html
index 30b158d1738329aeb78b3f08e5297cad8169bad4..30236d22d0aed71747e4d686d567f6637e80c4c8 100644
--- a/libmongoc/1.23.3/mongoc_rand.html
+++ b/libmongoc/1.23.3/mongoc_rand.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_rand_add.html b/libmongoc/1.23.3/mongoc_rand_add.html
index 7d91580996305a5a7d499c91188a92ab3cd66741..bada55df88045ad94f8f4e22bf2a31dcb4a4a2c6 100644
--- a/libmongoc/1.23.3/mongoc_rand_add.html
+++ b/libmongoc/1.23.3/mongoc_rand_add.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_rand_seed.html b/libmongoc/1.23.3/mongoc_rand_seed.html
index cd6535b469edb83219af881edb8c7a71c9a74b29..1c10a74dd0a7a3494d8c37415763af9f0d655f37 100644
--- a/libmongoc/1.23.3/mongoc_rand_seed.html
+++ b/libmongoc/1.23.3/mongoc_rand_seed.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_rand_status.html b/libmongoc/1.23.3/mongoc_rand_status.html
index 1939e96fe8844a9d393aaf68d90ab145c6236abb..bb8f86c51fe4745c77b5bab84e7097d1658e9c27 100644
--- a/libmongoc/1.23.3/mongoc_rand_status.html
+++ b/libmongoc/1.23.3/mongoc_rand_status.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_concern_append.html b/libmongoc/1.23.3/mongoc_read_concern_append.html
index 7d8bd8cca989aae60964ec7e532f5a3bacb6108c..e7b4d91195981505f46319aba6de2b09c770cdaf 100644
--- a/libmongoc/1.23.3/mongoc_read_concern_append.html
+++ b/libmongoc/1.23.3/mongoc_read_concern_append.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_concern_copy.html b/libmongoc/1.23.3/mongoc_read_concern_copy.html
index 0add53eb6d8b6fc53ca6f5bd3378b198985c5e04..3be73a80e9280f48f4b91e830f7185dd024feb47 100644
--- a/libmongoc/1.23.3/mongoc_read_concern_copy.html
+++ b/libmongoc/1.23.3/mongoc_read_concern_copy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_concern_destroy.html b/libmongoc/1.23.3/mongoc_read_concern_destroy.html
index 071a614891ba891d304df01179d1cb71e11a42bc..c8e32d452204ae6c570c4c7dcdc2549ee96577a3 100644
--- a/libmongoc/1.23.3/mongoc_read_concern_destroy.html
+++ b/libmongoc/1.23.3/mongoc_read_concern_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_concern_get_level.html b/libmongoc/1.23.3/mongoc_read_concern_get_level.html
index f3d9bb9ef7d38d99ba2147f18fdb72cecd46963d..27ee8686981e7dc4a4b1aabbd63f79e1111f455a 100644
--- a/libmongoc/1.23.3/mongoc_read_concern_get_level.html
+++ b/libmongoc/1.23.3/mongoc_read_concern_get_level.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_concern_is_default.html b/libmongoc/1.23.3/mongoc_read_concern_is_default.html
index f7196a62194e9ee398835d8ee472233dd4819ab8..05aa09c50683d6b52f46376a7ff6eb8b21ad38d0 100644
--- a/libmongoc/1.23.3/mongoc_read_concern_is_default.html
+++ b/libmongoc/1.23.3/mongoc_read_concern_is_default.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_concern_new.html b/libmongoc/1.23.3/mongoc_read_concern_new.html
index 2fcbc681288698c159c3a7a1ac6c48438221b339..75e422008db7a651e0a2db59306b5527d2fe7728 100644
--- a/libmongoc/1.23.3/mongoc_read_concern_new.html
+++ b/libmongoc/1.23.3/mongoc_read_concern_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_concern_set_level.html b/libmongoc/1.23.3/mongoc_read_concern_set_level.html
index 7702967047b9800c3e49f79fd580e33c2f21be8b..b9d3e4057099b67fcf42922a05b2ba3ca991b3ee 100644
--- a/libmongoc/1.23.3/mongoc_read_concern_set_level.html
+++ b/libmongoc/1.23.3/mongoc_read_concern_set_level.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_concern_t.html b/libmongoc/1.23.3/mongoc_read_concern_t.html
index dbd7cffcb401a120d37108b4feac6a02a981c669..5cd7f24ed7b45f9e0b82a0c4bded8fb2a029ee1a 100644
--- a/libmongoc/1.23.3/mongoc_read_concern_t.html
+++ b/libmongoc/1.23.3/mongoc_read_concern_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_mode_t.html b/libmongoc/1.23.3/mongoc_read_mode_t.html
index ac2246f4b3ccd1fdb65f79b602cff0b7b7be70b2..78543863e2c857dab5f757d362a87f2a21040036 100644
--- a/libmongoc/1.23.3/mongoc_read_mode_t.html
+++ b/libmongoc/1.23.3/mongoc_read_mode_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_prefs_add_tag.html b/libmongoc/1.23.3/mongoc_read_prefs_add_tag.html
index 9e645c652ef97c0a02a5994702db1e353cf8714b..b5028d5648fdcb8faa4f928aaf35d3838a3b87f2 100644
--- a/libmongoc/1.23.3/mongoc_read_prefs_add_tag.html
+++ b/libmongoc/1.23.3/mongoc_read_prefs_add_tag.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_prefs_copy.html b/libmongoc/1.23.3/mongoc_read_prefs_copy.html
index 1c06707afb97582c040bed849cc7a25c691987dc..45653dbcab37e9efd6b97b2410198c09195272d6 100644
--- a/libmongoc/1.23.3/mongoc_read_prefs_copy.html
+++ b/libmongoc/1.23.3/mongoc_read_prefs_copy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_prefs_destroy.html b/libmongoc/1.23.3/mongoc_read_prefs_destroy.html
index 7a187f0bdbbae8a0bd67efda6204f04cd748fa2d..6e134b60f7eef638bb93f9c9335cf49ddcb1c630 100644
--- a/libmongoc/1.23.3/mongoc_read_prefs_destroy.html
+++ b/libmongoc/1.23.3/mongoc_read_prefs_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_prefs_get_hedge.html b/libmongoc/1.23.3/mongoc_read_prefs_get_hedge.html
index 8d0c5cc60e7a52fa07f412c668f9f1410f9fb36c..267dfcb563bacb2692c21cede9c3512da2dffc00 100644
--- a/libmongoc/1.23.3/mongoc_read_prefs_get_hedge.html
+++ b/libmongoc/1.23.3/mongoc_read_prefs_get_hedge.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_prefs_get_max_staleness_seconds.html b/libmongoc/1.23.3/mongoc_read_prefs_get_max_staleness_seconds.html
index b517b7626d615d083cbee625bb513bee45d6c021..056e82d7286239311714da1ffecd18b39b78e501 100644
--- a/libmongoc/1.23.3/mongoc_read_prefs_get_max_staleness_seconds.html
+++ b/libmongoc/1.23.3/mongoc_read_prefs_get_max_staleness_seconds.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_prefs_get_mode.html b/libmongoc/1.23.3/mongoc_read_prefs_get_mode.html
index 92e8a5b3823265d4e6835b645c12dcf3317f1745..60c1ee4cb8501d994d07f10aff7e1cf0f671894b 100644
--- a/libmongoc/1.23.3/mongoc_read_prefs_get_mode.html
+++ b/libmongoc/1.23.3/mongoc_read_prefs_get_mode.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_prefs_get_tags.html b/libmongoc/1.23.3/mongoc_read_prefs_get_tags.html
index d280c97b98d601617c2ae2dce68bfd7fdd3d8b66..dd2e68137c63527ba25d41be7918288e7a600d3e 100644
--- a/libmongoc/1.23.3/mongoc_read_prefs_get_tags.html
+++ b/libmongoc/1.23.3/mongoc_read_prefs_get_tags.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_prefs_is_valid.html b/libmongoc/1.23.3/mongoc_read_prefs_is_valid.html
index 64babb6f191ffc0ddf114fba0d6a857c9a739b1a..3ce681dd4d895eea19600d990748e255f45b5462 100644
--- a/libmongoc/1.23.3/mongoc_read_prefs_is_valid.html
+++ b/libmongoc/1.23.3/mongoc_read_prefs_is_valid.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_prefs_new.html b/libmongoc/1.23.3/mongoc_read_prefs_new.html
index e99c96803b9c4f01d3ffdd1b26b5ef1d6d5f8fac..57113e9aeec09efb278073e19e843877945a737b 100644
--- a/libmongoc/1.23.3/mongoc_read_prefs_new.html
+++ b/libmongoc/1.23.3/mongoc_read_prefs_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_prefs_set_hedge.html b/libmongoc/1.23.3/mongoc_read_prefs_set_hedge.html
index c1804b264ad7f21473cd2d48e9601b585fa9a75a..b9fb9a648543525b022c5b3fa6b526334f1b8821 100644
--- a/libmongoc/1.23.3/mongoc_read_prefs_set_hedge.html
+++ b/libmongoc/1.23.3/mongoc_read_prefs_set_hedge.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_prefs_set_max_staleness_seconds.html b/libmongoc/1.23.3/mongoc_read_prefs_set_max_staleness_seconds.html
index c6e9b234c5c60e43abbe12236ea2280824dc8770..0517fe80ba1ea8609013a0301d6b957b07cfb416 100644
--- a/libmongoc/1.23.3/mongoc_read_prefs_set_max_staleness_seconds.html
+++ b/libmongoc/1.23.3/mongoc_read_prefs_set_max_staleness_seconds.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_prefs_set_mode.html b/libmongoc/1.23.3/mongoc_read_prefs_set_mode.html
index 821b3fe7e218a68149191f19a5c789027fa1ebac..d74609164c3ae694b3e4dd54276df067784f0bed 100644
--- a/libmongoc/1.23.3/mongoc_read_prefs_set_mode.html
+++ b/libmongoc/1.23.3/mongoc_read_prefs_set_mode.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_prefs_set_tags.html b/libmongoc/1.23.3/mongoc_read_prefs_set_tags.html
index 27337472f1a0f15b53fd07d2b33bf11d4ce6be9d..20b97c3ac11769ba104222179389d8fa4139d052 100644
--- a/libmongoc/1.23.3/mongoc_read_prefs_set_tags.html
+++ b/libmongoc/1.23.3/mongoc_read_prefs_set_tags.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_read_prefs_t.html b/libmongoc/1.23.3/mongoc_read_prefs_t.html
index b5b801d5979761a1dbc63908564e376704919cbc..7ea783431710628f9b2fe39013ab48641a97e67e 100644
--- a/libmongoc/1.23.3/mongoc_read_prefs_t.html
+++ b/libmongoc/1.23.3/mongoc_read_prefs_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_remove_flags_t.html b/libmongoc/1.23.3/mongoc_remove_flags_t.html
index 47a506d42897fdb98b388373e84bde9740e39754..637178752ccc53157cb4151a20e0fe7062a0de42 100644
--- a/libmongoc/1.23.3/mongoc_remove_flags_t.html
+++ b/libmongoc/1.23.3/mongoc_remove_flags_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_reply_flags_t.html b/libmongoc/1.23.3/mongoc_reply_flags_t.html
index 49fd53800f51eaea629de9dd160e75d5b1c4c125..7414f290b1ed2d74e6501ba05ae4f6f9f45226f3 100644
--- a/libmongoc/1.23.3/mongoc_reply_flags_t.html
+++ b/libmongoc/1.23.3/mongoc_reply_flags_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_api_copy.html b/libmongoc/1.23.3/mongoc_server_api_copy.html
index 1ad013393292056c8219737d74d1de5ed77d30fb..15d6bafc0dfb5f2e1c2a780798e85597f31f1205 100644
--- a/libmongoc/1.23.3/mongoc_server_api_copy.html
+++ b/libmongoc/1.23.3/mongoc_server_api_copy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_api_deprecation_errors.html b/libmongoc/1.23.3/mongoc_server_api_deprecation_errors.html
index dcde321c460b4e827bbf51017044df6060512b5c..59dba73cc5c478609eee1baf981de97705eaaa03 100644
--- a/libmongoc/1.23.3/mongoc_server_api_deprecation_errors.html
+++ b/libmongoc/1.23.3/mongoc_server_api_deprecation_errors.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_api_destroy.html b/libmongoc/1.23.3/mongoc_server_api_destroy.html
index 8fb85511f5e5f5c95cdd28b4c42777b166819072..d9b65794b893f53f45022f4895a8c6b2fb25ecf0 100644
--- a/libmongoc/1.23.3/mongoc_server_api_destroy.html
+++ b/libmongoc/1.23.3/mongoc_server_api_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_api_get_deprecation_errors.html b/libmongoc/1.23.3/mongoc_server_api_get_deprecation_errors.html
index c9c45067c7ed2eafaacc7f4d0797f16a2df31671..ab7653a3be923fe2d8174be144ec55a6d96a74ed 100644
--- a/libmongoc/1.23.3/mongoc_server_api_get_deprecation_errors.html
+++ b/libmongoc/1.23.3/mongoc_server_api_get_deprecation_errors.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_api_get_strict.html b/libmongoc/1.23.3/mongoc_server_api_get_strict.html
index 8db9fc853f7653d3ef7d388b6b73779fa210d6c5..b28a2e0c0e1a07d7baac92b882b8617f87b308ab 100644
--- a/libmongoc/1.23.3/mongoc_server_api_get_strict.html
+++ b/libmongoc/1.23.3/mongoc_server_api_get_strict.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_api_get_version.html b/libmongoc/1.23.3/mongoc_server_api_get_version.html
index cfaa6957b612ea82c94cac7b33b9872dc188aee6..592e7b9563d942b9c88adc65ffe92ff099f05a44 100644
--- a/libmongoc/1.23.3/mongoc_server_api_get_version.html
+++ b/libmongoc/1.23.3/mongoc_server_api_get_version.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_api_new.html b/libmongoc/1.23.3/mongoc_server_api_new.html
index c794c0c477cf45bf25face9e80bab1829237497b..f32543c672a6f913b24595bdfc1ac47d8c162992 100644
--- a/libmongoc/1.23.3/mongoc_server_api_new.html
+++ b/libmongoc/1.23.3/mongoc_server_api_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_api_strict.html b/libmongoc/1.23.3/mongoc_server_api_strict.html
index bfa8c54cdc96530c23551dd160fcd36a9e5189bd..a9eea5d5ccf9f2a74fcf968014a4857ffd7b5c61 100644
--- a/libmongoc/1.23.3/mongoc_server_api_strict.html
+++ b/libmongoc/1.23.3/mongoc_server_api_strict.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_api_t.html b/libmongoc/1.23.3/mongoc_server_api_t.html
index bd3ebbaf4e2d42da2d765389f5574af0f1b83826..d045d3f9f19c260d09c1266b10370a4217870d24 100644
--- a/libmongoc/1.23.3/mongoc_server_api_t.html
+++ b/libmongoc/1.23.3/mongoc_server_api_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_api_version_from_string.html b/libmongoc/1.23.3/mongoc_server_api_version_from_string.html
index 85e3e0f1ef49178a1ae365b9528500384328963c..edc5c3e4db5f3db83c28ad53afb97b861a438708 100644
--- a/libmongoc/1.23.3/mongoc_server_api_version_from_string.html
+++ b/libmongoc/1.23.3/mongoc_server_api_version_from_string.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_api_version_t.html b/libmongoc/1.23.3/mongoc_server_api_version_t.html
index fe9a5f1a8e9a09052727832962d0b920051df345..af5a4cb6bac3cd3857e54463a256ed76e6add51c 100644
--- a/libmongoc/1.23.3/mongoc_server_api_version_t.html
+++ b/libmongoc/1.23.3/mongoc_server_api_version_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_api_version_to_string.html b/libmongoc/1.23.3/mongoc_server_api_version_to_string.html
index 7862df1a474c23713e49ffda11ede3641d218526..9de6d351b21e0771bdfc91c530ed9f1d2057108b 100644
--- a/libmongoc/1.23.3/mongoc_server_api_version_to_string.html
+++ b/libmongoc/1.23.3/mongoc_server_api_version_to_string.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_description_destroy.html b/libmongoc/1.23.3/mongoc_server_description_destroy.html
index 45ce04473d4dac7364b32a1e013b828e152ccdb1..9aa788105e9006042a045127735c1ac1ac5acd22 100644
--- a/libmongoc/1.23.3/mongoc_server_description_destroy.html
+++ b/libmongoc/1.23.3/mongoc_server_description_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_description_hello_response.html b/libmongoc/1.23.3/mongoc_server_description_hello_response.html
index c911c2875d91b6c13eced7cffd2ba20d60f99496..1f029de5d03fabfef6f16cb8e69c441e35bbc868 100644
--- a/libmongoc/1.23.3/mongoc_server_description_hello_response.html
+++ b/libmongoc/1.23.3/mongoc_server_description_hello_response.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_description_host.html b/libmongoc/1.23.3/mongoc_server_description_host.html
index d06f86a50fde92c5db490a8ec68b3b203a114c48..cec4b032be27ca65275ab0555ae0bf99fe89a12b 100644
--- a/libmongoc/1.23.3/mongoc_server_description_host.html
+++ b/libmongoc/1.23.3/mongoc_server_description_host.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_description_id.html b/libmongoc/1.23.3/mongoc_server_description_id.html
index 8f1acee4db74124f5ba54ab5fc2daed8a749a1f2..77d001396311cb41ae688066b346a08d0409cade 100644
--- a/libmongoc/1.23.3/mongoc_server_description_id.html
+++ b/libmongoc/1.23.3/mongoc_server_description_id.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_description_ismaster.html b/libmongoc/1.23.3/mongoc_server_description_ismaster.html
index 812f03c9f1d52998ea7622178c8dffe08286dd94..8bacbf6523c8247bef43ccc625ee475b1dc32096 100644
--- a/libmongoc/1.23.3/mongoc_server_description_ismaster.html
+++ b/libmongoc/1.23.3/mongoc_server_description_ismaster.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_description_last_update_time.html b/libmongoc/1.23.3/mongoc_server_description_last_update_time.html
index 6394371ca18d1f18d5737158a47c2865451f7032..8f127ce02f9a036151e392db595a2abb3a0eff39 100644
--- a/libmongoc/1.23.3/mongoc_server_description_last_update_time.html
+++ b/libmongoc/1.23.3/mongoc_server_description_last_update_time.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_description_new_copy.html b/libmongoc/1.23.3/mongoc_server_description_new_copy.html
index e59e69973ac215c2671e5783cbf2f716f2871268..fbd52ee83552e7360219024811dcf3b8897b3b46 100644
--- a/libmongoc/1.23.3/mongoc_server_description_new_copy.html
+++ b/libmongoc/1.23.3/mongoc_server_description_new_copy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_description_round_trip_time.html b/libmongoc/1.23.3/mongoc_server_description_round_trip_time.html
index 0b4618f3e0529364d29b9cf6d6ec9c7a553468ee..ebb7efd36b15cf6da64b213a5aa164b3cee4ff9b 100644
--- a/libmongoc/1.23.3/mongoc_server_description_round_trip_time.html
+++ b/libmongoc/1.23.3/mongoc_server_description_round_trip_time.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_description_t.html b/libmongoc/1.23.3/mongoc_server_description_t.html
index 8e68765915f1724406fcf7f2b903996095acc466..2a824e30a7fcd7b9092cc101671a7eaa6bc6fff3 100644
--- a/libmongoc/1.23.3/mongoc_server_description_t.html
+++ b/libmongoc/1.23.3/mongoc_server_description_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_description_type.html b/libmongoc/1.23.3/mongoc_server_description_type.html
index a32fbeae38ffb391027b21f706c0f405d4ec0fba..9fd90fc965158584eacbfe9f2861f70bf5554de8 100644
--- a/libmongoc/1.23.3/mongoc_server_description_type.html
+++ b/libmongoc/1.23.3/mongoc_server_description_type.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_server_descriptions_destroy_all.html b/libmongoc/1.23.3/mongoc_server_descriptions_destroy_all.html
index 4047584aec4b98bbc1181901f97c8a6e94de357a..098df642f07f9ed133fb94d494838370da8bb411 100644
--- a/libmongoc/1.23.3/mongoc_server_descriptions_destroy_all.html
+++ b/libmongoc/1.23.3/mongoc_server_descriptions_destroy_all.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_session_opt_t.html b/libmongoc/1.23.3/mongoc_session_opt_t.html
index 7636bb9385bc9db63e4299b14b771623aa6999eb..f73dfc02c62e6c2a7a2e613df0f1ad7700a50068 100644
--- a/libmongoc/1.23.3/mongoc_session_opt_t.html
+++ b/libmongoc/1.23.3/mongoc_session_opt_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_session_opts_clone.html b/libmongoc/1.23.3/mongoc_session_opts_clone.html
index e0d598525c867d91239c4ab88dedcdc235c99881..55d3076a3aca0ca28d25332bdadc97275adb953e 100644
--- a/libmongoc/1.23.3/mongoc_session_opts_clone.html
+++ b/libmongoc/1.23.3/mongoc_session_opts_clone.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_session_opts_destroy.html b/libmongoc/1.23.3/mongoc_session_opts_destroy.html
index d63180bbf38a485ce7bd5b92e01c1c5f1fb03bfa..6eb03333b6876a7d4940af28feec0a7336494a9b 100644
--- a/libmongoc/1.23.3/mongoc_session_opts_destroy.html
+++ b/libmongoc/1.23.3/mongoc_session_opts_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_session_opts_get_causal_consistency.html b/libmongoc/1.23.3/mongoc_session_opts_get_causal_consistency.html
index acd32da97ed800bf79b4936714aeca98cd53b684..5c174b6be8dff2b8dae41ac4267c6514281a204f 100644
--- a/libmongoc/1.23.3/mongoc_session_opts_get_causal_consistency.html
+++ b/libmongoc/1.23.3/mongoc_session_opts_get_causal_consistency.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_session_opts_get_default_transaction_opts.html b/libmongoc/1.23.3/mongoc_session_opts_get_default_transaction_opts.html
index b22ae3ee3a72e1175e9bfe9299ee25d23e67b437..6cab216b314364c9738437e2c3fff9bec8537da4 100644
--- a/libmongoc/1.23.3/mongoc_session_opts_get_default_transaction_opts.html
+++ b/libmongoc/1.23.3/mongoc_session_opts_get_default_transaction_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_session_opts_get_snapshot.html b/libmongoc/1.23.3/mongoc_session_opts_get_snapshot.html
index 954c101477190f2b10cc5dd547208c5b11e36939..ea0bce5836600709a5dd6af1fbdcb76003594a1c 100644
--- a/libmongoc/1.23.3/mongoc_session_opts_get_snapshot.html
+++ b/libmongoc/1.23.3/mongoc_session_opts_get_snapshot.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_session_opts_get_transaction_opts.html b/libmongoc/1.23.3/mongoc_session_opts_get_transaction_opts.html
index b8479e768d35bc6c2ebf2fbce2a6e5bc0d17b230..f5810efa7e309ce6edf27d6605868a3d5ed338ff 100644
--- a/libmongoc/1.23.3/mongoc_session_opts_get_transaction_opts.html
+++ b/libmongoc/1.23.3/mongoc_session_opts_get_transaction_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_session_opts_new.html b/libmongoc/1.23.3/mongoc_session_opts_new.html
index 0e6cf8e82faa7bae59c0fc2ea12be374bb8987da..b05413df9907619172cb3100afbdff31286446da 100644
--- a/libmongoc/1.23.3/mongoc_session_opts_new.html
+++ b/libmongoc/1.23.3/mongoc_session_opts_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_session_opts_set_causal_consistency.html b/libmongoc/1.23.3/mongoc_session_opts_set_causal_consistency.html
index 6a1cde8f01d23f3263744738abb0b1a98bd18185..bd11176a7e72b3d41c2a646ec28d3b79689bdd8e 100644
--- a/libmongoc/1.23.3/mongoc_session_opts_set_causal_consistency.html
+++ b/libmongoc/1.23.3/mongoc_session_opts_set_causal_consistency.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_session_opts_set_default_transaction_opts.html b/libmongoc/1.23.3/mongoc_session_opts_set_default_transaction_opts.html
index b655d3edcfffeb4daf1807975277952a6a98a414..fd8accbe598612cfe1dab1ff380e86755ff5a13d 100644
--- a/libmongoc/1.23.3/mongoc_session_opts_set_default_transaction_opts.html
+++ b/libmongoc/1.23.3/mongoc_session_opts_set_default_transaction_opts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_session_opts_set_snapshot.html b/libmongoc/1.23.3/mongoc_session_opts_set_snapshot.html
index 474589dcf70705b618793dd89f38d94894372050..6fa5dc42ca2d2821afb91aa85e73ddcfee922aa9 100644
--- a/libmongoc/1.23.3/mongoc_session_opts_set_snapshot.html
+++ b/libmongoc/1.23.3/mongoc_session_opts_set_snapshot.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_socket_accept.html b/libmongoc/1.23.3/mongoc_socket_accept.html
index d9dfd954923b57c2a1b8b6e1d298439176bbf775..3a9f634ff900a6d0c7cbf00f0457365f9fdbabe1 100644
--- a/libmongoc/1.23.3/mongoc_socket_accept.html
+++ b/libmongoc/1.23.3/mongoc_socket_accept.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_socket_bind.html b/libmongoc/1.23.3/mongoc_socket_bind.html
index 33a9890062e40d8de85720968952d15737db842c..e2d008cc27c0abf41ef87ed1f3ae0b88206c86fe 100644
--- a/libmongoc/1.23.3/mongoc_socket_bind.html
+++ b/libmongoc/1.23.3/mongoc_socket_bind.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_socket_close.html b/libmongoc/1.23.3/mongoc_socket_close.html
index 198fdd186d85fa8b1b1c1f5688e2160fa663897d..912c0fb70ec827630384bfcf8fef23c9c7c156b9 100644
--- a/libmongoc/1.23.3/mongoc_socket_close.html
+++ b/libmongoc/1.23.3/mongoc_socket_close.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_socket_connect.html b/libmongoc/1.23.3/mongoc_socket_connect.html
index aef662222e45018517512ce946475ced1d5169fa..5721909140b332dfec4bfe4cc9cc746d35a03813 100644
--- a/libmongoc/1.23.3/mongoc_socket_connect.html
+++ b/libmongoc/1.23.3/mongoc_socket_connect.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_socket_destroy.html b/libmongoc/1.23.3/mongoc_socket_destroy.html
index 7f503e2b397f717c0acc8841c504fbfbf060f590..83d8a9629ef6b7ed0d61711573be5443a527a50f 100644
--- a/libmongoc/1.23.3/mongoc_socket_destroy.html
+++ b/libmongoc/1.23.3/mongoc_socket_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_socket_errno.html b/libmongoc/1.23.3/mongoc_socket_errno.html
index 39f3f229eece0891cbd3d892f421e34a6de8d7b9..3e0f9bc2f38cac56843c92da7aa20d9f2c5ff01a 100644
--- a/libmongoc/1.23.3/mongoc_socket_errno.html
+++ b/libmongoc/1.23.3/mongoc_socket_errno.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_socket_getnameinfo.html b/libmongoc/1.23.3/mongoc_socket_getnameinfo.html
index 1bc9c99e6dc8fe3b71d996c7e51d85b04fb80d44..61d7fa057a1b5ce9c6f19c4964c0b81b5346e799 100644
--- a/libmongoc/1.23.3/mongoc_socket_getnameinfo.html
+++ b/libmongoc/1.23.3/mongoc_socket_getnameinfo.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_socket_getsockname.html b/libmongoc/1.23.3/mongoc_socket_getsockname.html
index df9f3d14b8a07841d4be4830806dff9b4fe69162..658f9af91b66d46a4b80db54ba7633dbe32e720b 100644
--- a/libmongoc/1.23.3/mongoc_socket_getsockname.html
+++ b/libmongoc/1.23.3/mongoc_socket_getsockname.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_socket_listen.html b/libmongoc/1.23.3/mongoc_socket_listen.html
index 8110c271d18463ffd03ff5065a98e60b19907024..1f3dd01e14c2355f1ae7beb53a765db3e93100d3 100644
--- a/libmongoc/1.23.3/mongoc_socket_listen.html
+++ b/libmongoc/1.23.3/mongoc_socket_listen.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_socket_new.html b/libmongoc/1.23.3/mongoc_socket_new.html
index 78bf5ff65989328b78bf0286c2ef4ea86a3ee28a..a8bdd385449b206d6647f3944c1629a62f7cc925 100644
--- a/libmongoc/1.23.3/mongoc_socket_new.html
+++ b/libmongoc/1.23.3/mongoc_socket_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_socket_recv.html b/libmongoc/1.23.3/mongoc_socket_recv.html
index fca3fe0de0922083d3ab8a7f70a775886d91abb1..7a11e8e8ed037dcf28734a09feae2556b4919407 100644
--- a/libmongoc/1.23.3/mongoc_socket_recv.html
+++ b/libmongoc/1.23.3/mongoc_socket_recv.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_socket_send.html b/libmongoc/1.23.3/mongoc_socket_send.html
index 02e33f0932df8c7884204b2f23638a4bbf4a789e..89f32f8f383d31d69c1067afafac56ef657ab29f 100644
--- a/libmongoc/1.23.3/mongoc_socket_send.html
+++ b/libmongoc/1.23.3/mongoc_socket_send.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_socket_sendv.html b/libmongoc/1.23.3/mongoc_socket_sendv.html
index a451b17c6a2124c3ee91230ecbbfa3cbc3a5bbc9..48b410c37363b6ca01d96b34a053af1a4b6a99ab 100644
--- a/libmongoc/1.23.3/mongoc_socket_sendv.html
+++ b/libmongoc/1.23.3/mongoc_socket_sendv.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_socket_setsockopt.html b/libmongoc/1.23.3/mongoc_socket_setsockopt.html
index 53e5509a563044c0a33450d6799f6504daa75344..6d901a2984fecfd906b94e8dccbc895979675038 100644
--- a/libmongoc/1.23.3/mongoc_socket_setsockopt.html
+++ b/libmongoc/1.23.3/mongoc_socket_setsockopt.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_socket_t.html b/libmongoc/1.23.3/mongoc_socket_t.html
index bd0b831a276fc13c8ad4777357131e247cafe5d3..60bf3e6b3af84acab2cd28be910e29b8d8a2ae03 100644
--- a/libmongoc/1.23.3/mongoc_socket_t.html
+++ b/libmongoc/1.23.3/mongoc_socket_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_ssl_opt_get_default.html b/libmongoc/1.23.3/mongoc_ssl_opt_get_default.html
index 9d94e7bea0a754541d3c712e628d341977364e7d..fad3e9c3ef50d1df44fd1356dd2153587ce31502 100644
--- a/libmongoc/1.23.3/mongoc_ssl_opt_get_default.html
+++ b/libmongoc/1.23.3/mongoc_ssl_opt_get_default.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_ssl_opt_t.html b/libmongoc/1.23.3/mongoc_ssl_opt_t.html
index f99e4aea9869d81522865c1cacf06271a9068264..59baa1a0d0d9121c7e63b87da7b72a7f1f15ae90 100644
--- a/libmongoc/1.23.3/mongoc_ssl_opt_t.html
+++ b/libmongoc/1.23.3/mongoc_ssl_opt_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_buffered_new.html b/libmongoc/1.23.3/mongoc_stream_buffered_new.html
index 7340b9ad2925f63f1bba65a80ac9855ddceec85a..4646c7bfccbd4d2eed59df341f034bf1b99ef168 100644
--- a/libmongoc/1.23.3/mongoc_stream_buffered_new.html
+++ b/libmongoc/1.23.3/mongoc_stream_buffered_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_buffered_t.html b/libmongoc/1.23.3/mongoc_stream_buffered_t.html
index 8d87438c3f121413cce3a556b0a0d2c0e497ab8f..603e210421d317e295d523e04500e386d7bdd6b9 100644
--- a/libmongoc/1.23.3/mongoc_stream_buffered_t.html
+++ b/libmongoc/1.23.3/mongoc_stream_buffered_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_close.html b/libmongoc/1.23.3/mongoc_stream_close.html
index 72f947085666ae042447615224e80f404fe5c331..648573034f19c16ee388f8dd779556267f41d1db 100644
--- a/libmongoc/1.23.3/mongoc_stream_close.html
+++ b/libmongoc/1.23.3/mongoc_stream_close.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_cork.html b/libmongoc/1.23.3/mongoc_stream_cork.html
index 17986051c2f17c2f61599bdaf1d5bfbb4985e19d..a4e9d073257ec2a0842c7cbc1e922018076b20aa 100644
--- a/libmongoc/1.23.3/mongoc_stream_cork.html
+++ b/libmongoc/1.23.3/mongoc_stream_cork.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_destroy.html b/libmongoc/1.23.3/mongoc_stream_destroy.html
index 4270b3d8e7fe0917cd16e595ae0df7a1a0839e4a..836908a600682b201a3ff3cc10c48951174fc59a 100644
--- a/libmongoc/1.23.3/mongoc_stream_destroy.html
+++ b/libmongoc/1.23.3/mongoc_stream_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_file_get_fd.html b/libmongoc/1.23.3/mongoc_stream_file_get_fd.html
index 013692f16771999bf95c910a112e7525a6e8a00c..4f58ff1c08c66ae277e030c5994d47304223b48e 100644
--- a/libmongoc/1.23.3/mongoc_stream_file_get_fd.html
+++ b/libmongoc/1.23.3/mongoc_stream_file_get_fd.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_file_new.html b/libmongoc/1.23.3/mongoc_stream_file_new.html
index 146e5080ee37857bef71c1e3807573c09000d934..b9702a2f3b91af13454e26ff8d80890ba18d9a27 100644
--- a/libmongoc/1.23.3/mongoc_stream_file_new.html
+++ b/libmongoc/1.23.3/mongoc_stream_file_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_file_new_for_path.html b/libmongoc/1.23.3/mongoc_stream_file_new_for_path.html
index ab70c2205c5f51f0818bf71d14d78137b4624cc8..28bd5342c2a5eb5a25723d3e3852e1270ac422f5 100644
--- a/libmongoc/1.23.3/mongoc_stream_file_new_for_path.html
+++ b/libmongoc/1.23.3/mongoc_stream_file_new_for_path.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_file_t.html b/libmongoc/1.23.3/mongoc_stream_file_t.html
index 102203d044ad1c94c61cd824d832921abcfd9f26..86efdb1b0c0fc96ac52414d9bbbfc9efea0d09a7 100644
--- a/libmongoc/1.23.3/mongoc_stream_file_t.html
+++ b/libmongoc/1.23.3/mongoc_stream_file_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_flush.html b/libmongoc/1.23.3/mongoc_stream_flush.html
index 0f57f5945480279ab2e35988a4d17fb4c7800c14..33e22c01239abcd7ce0b506fc6faad438df60e5f 100644
--- a/libmongoc/1.23.3/mongoc_stream_flush.html
+++ b/libmongoc/1.23.3/mongoc_stream_flush.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_get_base_stream.html b/libmongoc/1.23.3/mongoc_stream_get_base_stream.html
index dab72ead1af4c5080fcd65d946e8d8523ca9de3f..1b240ee9ab59a2636b71b0e4c1939fc773e5f832 100644
--- a/libmongoc/1.23.3/mongoc_stream_get_base_stream.html
+++ b/libmongoc/1.23.3/mongoc_stream_get_base_stream.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_gridfs_new.html b/libmongoc/1.23.3/mongoc_stream_gridfs_new.html
index ed999f56d9c9844d749409ba2d6ae4ce581f153a..00016185d1ca9534bc4be3a1f7b82447412bf769 100644
--- a/libmongoc/1.23.3/mongoc_stream_gridfs_new.html
+++ b/libmongoc/1.23.3/mongoc_stream_gridfs_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_read.html b/libmongoc/1.23.3/mongoc_stream_read.html
index bc8c48e8029b8b3e321cbafbb795298d9f83f802..56002178fa195cd15e2783fce7edde0e89742c04 100644
--- a/libmongoc/1.23.3/mongoc_stream_read.html
+++ b/libmongoc/1.23.3/mongoc_stream_read.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_readv.html b/libmongoc/1.23.3/mongoc_stream_readv.html
index 2fe52a614cabb3d341dcc1784b9b7d788f8a6e56..df6f67995d8e157350d0d42c97f93ffd01f15377 100644
--- a/libmongoc/1.23.3/mongoc_stream_readv.html
+++ b/libmongoc/1.23.3/mongoc_stream_readv.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_setsockopt.html b/libmongoc/1.23.3/mongoc_stream_setsockopt.html
index 3c73b8aa44c4fb9f59f2eb46a1b7bd3f09c4f4b4..588676fb756f04ff4ca9c2e4ce5dcc5b18c54e3f 100644
--- a/libmongoc/1.23.3/mongoc_stream_setsockopt.html
+++ b/libmongoc/1.23.3/mongoc_stream_setsockopt.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_should_retry.html b/libmongoc/1.23.3/mongoc_stream_should_retry.html
index 5dbec077be7400b1d810009ea565b4c9f9b3a94b..02356bc43e1300f3d269da1247576fe6fb2964e0 100644
--- a/libmongoc/1.23.3/mongoc_stream_should_retry.html
+++ b/libmongoc/1.23.3/mongoc_stream_should_retry.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_socket_get_socket.html b/libmongoc/1.23.3/mongoc_stream_socket_get_socket.html
index 98f216f3915bf392bdd58af27f097637a5817a05..400ad805beb81526b3a688fd3d06288a1c735d5e 100644
--- a/libmongoc/1.23.3/mongoc_stream_socket_get_socket.html
+++ b/libmongoc/1.23.3/mongoc_stream_socket_get_socket.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_socket_new.html b/libmongoc/1.23.3/mongoc_stream_socket_new.html
index 7074efbac31a7ddc4e9a74610ef266755a30e900..773eaf37227290d48d587be2ad4ceee1040049a0 100644
--- a/libmongoc/1.23.3/mongoc_stream_socket_new.html
+++ b/libmongoc/1.23.3/mongoc_stream_socket_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_socket_t.html b/libmongoc/1.23.3/mongoc_stream_socket_t.html
index 96ce3cb77f546671dfcbffb32a09eb446e1ebd1c..c471466de5bdbcc8cb2dc8923a13de6e60f1b3a6 100644
--- a/libmongoc/1.23.3/mongoc_stream_socket_t.html
+++ b/libmongoc/1.23.3/mongoc_stream_socket_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_t.html b/libmongoc/1.23.3/mongoc_stream_t.html
index 5508671a07d41e33e73362c767a9ecac6dc483b5..02bb409a659334cce7e7a8cf5f8d3bc48a8f63ea 100644
--- a/libmongoc/1.23.3/mongoc_stream_t.html
+++ b/libmongoc/1.23.3/mongoc_stream_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_timed_out.html b/libmongoc/1.23.3/mongoc_stream_timed_out.html
index 2cda9665be25976dbfd0443475ff63d95f271ad7..c07f35b3bad75242ab2e8ba49de39b9a8a5dd60c 100644
--- a/libmongoc/1.23.3/mongoc_stream_timed_out.html
+++ b/libmongoc/1.23.3/mongoc_stream_timed_out.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_tls_t.html b/libmongoc/1.23.3/mongoc_stream_tls_t.html
index 6b5bdc02b485ca57d35e7b1188526ec095ae38e3..caa84cede45faf27e8cb22279e46538c23bcab52 100644
--- a/libmongoc/1.23.3/mongoc_stream_tls_t.html
+++ b/libmongoc/1.23.3/mongoc_stream_tls_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_uncork.html b/libmongoc/1.23.3/mongoc_stream_uncork.html
index 819baaebf47d628d3cbd460925918b234171dd11..bf9ef2bfd2c6a84233905112ff1dd6834e76f86b 100644
--- a/libmongoc/1.23.3/mongoc_stream_uncork.html
+++ b/libmongoc/1.23.3/mongoc_stream_uncork.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_write.html b/libmongoc/1.23.3/mongoc_stream_write.html
index a1ac0758575d7f65d45fc5beeec9af40c2028896..64f5799025383a2db206e8dc3ad34f710cfe5a25 100644
--- a/libmongoc/1.23.3/mongoc_stream_write.html
+++ b/libmongoc/1.23.3/mongoc_stream_write.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_stream_writev.html b/libmongoc/1.23.3/mongoc_stream_writev.html
index e07de91634f169e08456b30c4a1570c1726005e9..a835db64ee78db211b6ad80c4c091765f64c54c3 100644
--- a/libmongoc/1.23.3/mongoc_stream_writev.html
+++ b/libmongoc/1.23.3/mongoc_stream_writev.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_topology_description_destroy.html b/libmongoc/1.23.3/mongoc_topology_description_destroy.html
index dbeb7b015ac226164c5d31c59384c086558f4058..e23276ab8c5c70edd21e82895411029d29ee386f 100644
--- a/libmongoc/1.23.3/mongoc_topology_description_destroy.html
+++ b/libmongoc/1.23.3/mongoc_topology_description_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_topology_description_get_servers.html b/libmongoc/1.23.3/mongoc_topology_description_get_servers.html
index 538cd6823ef105301bccc48e72db8766e7ba2017..aef4fdfc19aae329707a6869f687589d87976730 100644
--- a/libmongoc/1.23.3/mongoc_topology_description_get_servers.html
+++ b/libmongoc/1.23.3/mongoc_topology_description_get_servers.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_topology_description_has_readable_server.html b/libmongoc/1.23.3/mongoc_topology_description_has_readable_server.html
index d527a98791fca886c3b63b4b50827e03d3389871..abf684f95776d886db1d99f7632a1ce0a49eff02 100644
--- a/libmongoc/1.23.3/mongoc_topology_description_has_readable_server.html
+++ b/libmongoc/1.23.3/mongoc_topology_description_has_readable_server.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_topology_description_has_writable_server.html b/libmongoc/1.23.3/mongoc_topology_description_has_writable_server.html
index f1125e3843ce1f2f93bba809c7a87a97223c6e02..879ac811ce6bbf86ed57e08703b43f76105c3a4f 100644
--- a/libmongoc/1.23.3/mongoc_topology_description_has_writable_server.html
+++ b/libmongoc/1.23.3/mongoc_topology_description_has_writable_server.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_topology_description_new_copy.html b/libmongoc/1.23.3/mongoc_topology_description_new_copy.html
index 53990c4df4ebc33a2d62c7f416a35589561a2024..9c9e24ca50373a8db719cfce82f460e2f87f49d8 100644
--- a/libmongoc/1.23.3/mongoc_topology_description_new_copy.html
+++ b/libmongoc/1.23.3/mongoc_topology_description_new_copy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_topology_description_t.html b/libmongoc/1.23.3/mongoc_topology_description_t.html
index 460797596bf817edfad5f21ca69c8da97f7d6d76..c5e934e536c58d4c0a05edd3c19a6db8222ae03d 100644
--- a/libmongoc/1.23.3/mongoc_topology_description_t.html
+++ b/libmongoc/1.23.3/mongoc_topology_description_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_topology_description_type.html b/libmongoc/1.23.3/mongoc_topology_description_type.html
index e121fc3426f494365626e25b95fce77344c09273..abba18098b226821c6a462b89106ba0345a5cefe 100644
--- a/libmongoc/1.23.3/mongoc_topology_description_type.html
+++ b/libmongoc/1.23.3/mongoc_topology_description_type.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_transaction_opt_t.html b/libmongoc/1.23.3/mongoc_transaction_opt_t.html
index 72fda6f0857ec5c21de086cf6e20eff4d8206dd3..04d172cc84c52c8c8138f1d8808c43fe35722338 100644
--- a/libmongoc/1.23.3/mongoc_transaction_opt_t.html
+++ b/libmongoc/1.23.3/mongoc_transaction_opt_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_transaction_opts_clone.html b/libmongoc/1.23.3/mongoc_transaction_opts_clone.html
index 1c51af572f26a24e09b44f6aa5fbae598abc3260..9a02767de96645f8aaed3a880e7f33b2c6f66cc1 100644
--- a/libmongoc/1.23.3/mongoc_transaction_opts_clone.html
+++ b/libmongoc/1.23.3/mongoc_transaction_opts_clone.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_transaction_opts_destroy.html b/libmongoc/1.23.3/mongoc_transaction_opts_destroy.html
index d9406dd9e84345b414400ca6ed5242631e623683..a6bcdf26a501df8b7d368144ac89eb07cb2c1454 100644
--- a/libmongoc/1.23.3/mongoc_transaction_opts_destroy.html
+++ b/libmongoc/1.23.3/mongoc_transaction_opts_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_transaction_opts_get_max_commit_time_ms.html b/libmongoc/1.23.3/mongoc_transaction_opts_get_max_commit_time_ms.html
index 4efe1de8fbbbb458c6ffac72f3aa29c70d0d1801..ef84225128233806553e94d0f8d8ebb1669c84b3 100644
--- a/libmongoc/1.23.3/mongoc_transaction_opts_get_max_commit_time_ms.html
+++ b/libmongoc/1.23.3/mongoc_transaction_opts_get_max_commit_time_ms.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_transaction_opts_get_read_concern.html b/libmongoc/1.23.3/mongoc_transaction_opts_get_read_concern.html
index 72e093e5373832fdb40c909a91da6b767431e7d0..7e3464e645d632645ad4d3fc83e2f2337b946438 100644
--- a/libmongoc/1.23.3/mongoc_transaction_opts_get_read_concern.html
+++ b/libmongoc/1.23.3/mongoc_transaction_opts_get_read_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_transaction_opts_get_read_prefs.html b/libmongoc/1.23.3/mongoc_transaction_opts_get_read_prefs.html
index 54a1d202796140c89d493596e72cd538994717c7..0160fd5be041c8e9b83ce9131eeb8d1c18a53f17 100644
--- a/libmongoc/1.23.3/mongoc_transaction_opts_get_read_prefs.html
+++ b/libmongoc/1.23.3/mongoc_transaction_opts_get_read_prefs.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_transaction_opts_get_write_concern.html b/libmongoc/1.23.3/mongoc_transaction_opts_get_write_concern.html
index 29aa32535ffa108cafdbaa90899747cc49ad91b8..9e35ec939182f5e5ac9d82cf33d36e6ae3853a73 100644
--- a/libmongoc/1.23.3/mongoc_transaction_opts_get_write_concern.html
+++ b/libmongoc/1.23.3/mongoc_transaction_opts_get_write_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_transaction_opts_new.html b/libmongoc/1.23.3/mongoc_transaction_opts_new.html
index 8abb58c1e0f22dd4cc1c208c6fdf402dc099c5df..41321e94930ba2925c21f4a3176eef753586d3b3 100644
--- a/libmongoc/1.23.3/mongoc_transaction_opts_new.html
+++ b/libmongoc/1.23.3/mongoc_transaction_opts_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_transaction_opts_set_max_commit_time_ms.html b/libmongoc/1.23.3/mongoc_transaction_opts_set_max_commit_time_ms.html
index 9e3f55202b6d40e9d2b2cf24afff90b92a0628f5..5cff80d763c27dd8152511d54b791e335d6b40e5 100644
--- a/libmongoc/1.23.3/mongoc_transaction_opts_set_max_commit_time_ms.html
+++ b/libmongoc/1.23.3/mongoc_transaction_opts_set_max_commit_time_ms.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_transaction_opts_set_read_concern.html b/libmongoc/1.23.3/mongoc_transaction_opts_set_read_concern.html
index f93f2a84d49dd239302497413fba1796c4d2c4e0..75549f8d8622cf112843e1c3934f2bc0f992cf27 100644
--- a/libmongoc/1.23.3/mongoc_transaction_opts_set_read_concern.html
+++ b/libmongoc/1.23.3/mongoc_transaction_opts_set_read_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_transaction_opts_set_read_prefs.html b/libmongoc/1.23.3/mongoc_transaction_opts_set_read_prefs.html
index 6693d0efe912c6c70acad9f01de6cdbcdc668ad4..b153dcb3cddf87c888e2b29d231262c12d8bcdaf 100644
--- a/libmongoc/1.23.3/mongoc_transaction_opts_set_read_prefs.html
+++ b/libmongoc/1.23.3/mongoc_transaction_opts_set_read_prefs.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_transaction_opts_set_write_concern.html b/libmongoc/1.23.3/mongoc_transaction_opts_set_write_concern.html
index 8798808cc9956fb24015043ebc96a43f604d12ff..702b122a927bb326ecef2ab71f0c3aa9a86f5ade 100644
--- a/libmongoc/1.23.3/mongoc_transaction_opts_set_write_concern.html
+++ b/libmongoc/1.23.3/mongoc_transaction_opts_set_write_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_transaction_state_t.html b/libmongoc/1.23.3/mongoc_transaction_state_t.html
index acc35dadeade0256c10af7afc70e960671b15ce7..979e6df49428d1f440ea3db985b03dd04fc34389 100644
--- a/libmongoc/1.23.3/mongoc_transaction_state_t.html
+++ b/libmongoc/1.23.3/mongoc_transaction_state_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_update_flags_t.html b/libmongoc/1.23.3/mongoc_update_flags_t.html
index 0673a05f58c2fd5a2889a55b90a5458e2a390471..a5e4565142405061ed38aaf357337087ecf3aeaf 100644
--- a/libmongoc/1.23.3/mongoc_update_flags_t.html
+++ b/libmongoc/1.23.3/mongoc_update_flags_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_copy.html b/libmongoc/1.23.3/mongoc_uri_copy.html
index ea64a1b852b9bd375d47ccd157063f3367e7a085..150a0d39a283b1ced39ec0786709a692dc593cf2 100644
--- a/libmongoc/1.23.3/mongoc_uri_copy.html
+++ b/libmongoc/1.23.3/mongoc_uri_copy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_destroy.html b/libmongoc/1.23.3/mongoc_uri_destroy.html
index ec0ec442427799241f29c08ceb2ad7366109cec1..4c952430b4547ca33ac4ab62d3228ed9efac502c 100644
--- a/libmongoc/1.23.3/mongoc_uri_destroy.html
+++ b/libmongoc/1.23.3/mongoc_uri_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_auth_mechanism.html b/libmongoc/1.23.3/mongoc_uri_get_auth_mechanism.html
index 0cb726fdf00d869f0347ed6cd533a3dedbc3d575..6e5a944f7f402fa8fc1a0ffe62d6864253a9f915 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_auth_mechanism.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_auth_mechanism.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_auth_source.html b/libmongoc/1.23.3/mongoc_uri_get_auth_source.html
index 24752c16bf15f4ec1869d005377e311e6cbee5f7..399b91f79b6d86d057ef8b42a47bdebec252b8eb 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_auth_source.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_auth_source.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_compressors.html b/libmongoc/1.23.3/mongoc_uri_get_compressors.html
index 66dddc73ac4e6ca2f627a0444cecc48765d4bdfc..cea25556524982f56e33c5187a8d85d31812d523 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_compressors.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_compressors.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_database.html b/libmongoc/1.23.3/mongoc_uri_get_database.html
index c0e88c63e5050ad0c5d32d63dcf20379248d9806..a5b727613341472087b451bf61cd3c5ac4778db0 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_database.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_database.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_hosts.html b/libmongoc/1.23.3/mongoc_uri_get_hosts.html
index 359a91041ad9243339a8d8275069d49803a14d1f..7ea63e7b0823a28a9c7aec925426e47e41e0b1a5 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_hosts.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_hosts.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_mechanism_properties.html b/libmongoc/1.23.3/mongoc_uri_get_mechanism_properties.html
index ec4514912340e5631f57f8bc4a353884f4c3ae0f..fcd5db451b2061af18804d3a7a63240066a46dbb 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_mechanism_properties.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_mechanism_properties.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_option_as_bool.html b/libmongoc/1.23.3/mongoc_uri_get_option_as_bool.html
index 35ec964d63dffeff89300945b5fc83c898c8bdbc..8d4df24dae278938688db2f84d015506ab782efb 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_option_as_bool.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_option_as_bool.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_option_as_int32.html b/libmongoc/1.23.3/mongoc_uri_get_option_as_int32.html
index 9563b79bb95d8d11efb4f236630d5ebafaa31a52..d49b9c88987b588ec0e55e275a9a6f984bd20c82 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_option_as_int32.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_option_as_int32.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_option_as_int64.html b/libmongoc/1.23.3/mongoc_uri_get_option_as_int64.html
index 9a10d6acfa09044f692ca5c1dadce2fd6c7065f2..d0270fbfb0166c9004c6a9d8610a796a5de7ca8c 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_option_as_int64.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_option_as_int64.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_option_as_utf8.html b/libmongoc/1.23.3/mongoc_uri_get_option_as_utf8.html
index ee9ea2e481a20b7c3cb56fd78aa7ea262f24c001..e0ecf3faf8536bf84b0f442f745dbf1a53955a3f 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_option_as_utf8.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_option_as_utf8.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_options.html b/libmongoc/1.23.3/mongoc_uri_get_options.html
index 9a0cbda18e98b3180c0623690179eeccd4bbc189..436ed30a9d8d32782b318e2ceb3ff5a65d530249 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_options.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_options.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_password.html b/libmongoc/1.23.3/mongoc_uri_get_password.html
index 0db23a902c203c944d60e5e9661dc0b7b2ac0b98..53f961072cc6f1a698d2704bcfed3d92a8d9af29 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_password.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_password.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_read_concern.html b/libmongoc/1.23.3/mongoc_uri_get_read_concern.html
index 897f0df9da9059253640970867a3af9408611788..c92ebd86fe1918ebd34649a36b92009033ee5957 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_read_concern.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_read_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_read_prefs.html b/libmongoc/1.23.3/mongoc_uri_get_read_prefs.html
index 9ad53bb0bfad174b916b225a21f0ae12d1c1cf70..72e9b85b86f6ee5c04fcce561ad32f6bf783f670 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_read_prefs.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_read_prefs.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_read_prefs_t.html b/libmongoc/1.23.3/mongoc_uri_get_read_prefs_t.html
index b0a27e35d10ceeca0ca94af152ce8283621bc5b5..b380ee87d930186c90510a154e9348172467b6ae 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_read_prefs_t.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_read_prefs_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_replica_set.html b/libmongoc/1.23.3/mongoc_uri_get_replica_set.html
index 36ffceddf0e518fb9121e02b1dab5a9065268e2c..8e2a03dd68511a0d9a866f269d897a2b719713f9 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_replica_set.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_replica_set.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_service.html b/libmongoc/1.23.3/mongoc_uri_get_service.html
index 4b6b97258b1959032c28cb8b1f2c7d6e87f0ac3e..ac5347faeb5c99a32a9a7149702c719c529dac7e 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_service.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_service.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_srv_hostname.html b/libmongoc/1.23.3/mongoc_uri_get_srv_hostname.html
index b983c0070a506a5438da4f7c8115861c71a89df3..39817aa7787a960a027801b0aab194c5f2977d0a 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_srv_hostname.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_srv_hostname.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_srv_service_name.html b/libmongoc/1.23.3/mongoc_uri_get_srv_service_name.html
index e0d9f6a2283a870611d3e5c037e7a733af9da815..edb6ac37ee5a9f7e0df261a9eea1b0b61f2db60b 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_srv_service_name.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_srv_service_name.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_ssl.html b/libmongoc/1.23.3/mongoc_uri_get_ssl.html
index fb81c122a756341cd48b57e4ece0a22080af7d3b..ac68981e465a5c7b6feafc9eb8a24a7a44f05740 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_ssl.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_ssl.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_string.html b/libmongoc/1.23.3/mongoc_uri_get_string.html
index 380718a4ec49e9174f2fbc29595727c2ddf068f9..e7c9dced159c07c3f16a80d82553ca98f25b0d62 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_string.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_string.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_tls.html b/libmongoc/1.23.3/mongoc_uri_get_tls.html
index 937db07d4fddbc4e6f938b99e767f6e81cd565ab..720c94b4e819ab734ddb6965d323f258093ceaf2 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_tls.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_tls.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_username.html b/libmongoc/1.23.3/mongoc_uri_get_username.html
index 7eac606c8c8d8a38f67fa5cb96c522dec77c34ca..b99f66af75f942775a980f390573f7115e65c30d 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_username.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_username.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_get_write_concern.html b/libmongoc/1.23.3/mongoc_uri_get_write_concern.html
index 83d9296aebe64f49c094438096915b4fc0fcfa1e..bfd81139fe61bede4257333fc1208c985f23b751 100644
--- a/libmongoc/1.23.3/mongoc_uri_get_write_concern.html
+++ b/libmongoc/1.23.3/mongoc_uri_get_write_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_has_option.html b/libmongoc/1.23.3/mongoc_uri_has_option.html
index a7f5dc966030381ab2889aa182093191d845e105..83817cea37fbe3e5950462368cdc2bb0f883c47f 100644
--- a/libmongoc/1.23.3/mongoc_uri_has_option.html
+++ b/libmongoc/1.23.3/mongoc_uri_has_option.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_new.html b/libmongoc/1.23.3/mongoc_uri_new.html
index 2d66dad0d86733d71fd01734f9f654fc69828ec5..76fb6379fff7fb7aa10b3a878b96cb11b2887c6e 100644
--- a/libmongoc/1.23.3/mongoc_uri_new.html
+++ b/libmongoc/1.23.3/mongoc_uri_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_new_for_host_port.html b/libmongoc/1.23.3/mongoc_uri_new_for_host_port.html
index 98b7dd681511061436f393931479bdd532ebe1a6..5c228607f2022426e6ea2d33f6709d4484042c72 100644
--- a/libmongoc/1.23.3/mongoc_uri_new_for_host_port.html
+++ b/libmongoc/1.23.3/mongoc_uri_new_for_host_port.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_new_with_error.html b/libmongoc/1.23.3/mongoc_uri_new_with_error.html
index 31f98ba164ade879f78acc74ddac6e6f6768fbf8..14acdfd4e619c7f2f94787e0a8cb8939c4955f4f 100644
--- a/libmongoc/1.23.3/mongoc_uri_new_with_error.html
+++ b/libmongoc/1.23.3/mongoc_uri_new_with_error.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_option_is_bool.html b/libmongoc/1.23.3/mongoc_uri_option_is_bool.html
index c428e8b77aed1b678fa6892deff263bd123a7766..405408f2daa001a91332ae76440ce787fb6a1c40 100644
--- a/libmongoc/1.23.3/mongoc_uri_option_is_bool.html
+++ b/libmongoc/1.23.3/mongoc_uri_option_is_bool.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_option_is_int32.html b/libmongoc/1.23.3/mongoc_uri_option_is_int32.html
index 67da1243219ed549e2a712acf3b910d4f4a0ab0a..8ad526f14f9d77b84215f9921aa66e9d9eda1dba 100644
--- a/libmongoc/1.23.3/mongoc_uri_option_is_int32.html
+++ b/libmongoc/1.23.3/mongoc_uri_option_is_int32.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_option_is_int64.html b/libmongoc/1.23.3/mongoc_uri_option_is_int64.html
index 921d5d6c5850a5c5d8ba3f42a6477bcbf4476131..0c958d304c3476d563bf821e6591930c56c3f5c3 100644
--- a/libmongoc/1.23.3/mongoc_uri_option_is_int64.html
+++ b/libmongoc/1.23.3/mongoc_uri_option_is_int64.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_option_is_utf8.html b/libmongoc/1.23.3/mongoc_uri_option_is_utf8.html
index e47b79969382327448c64451faeeb6cb135b428b..64302c3203932f5a5d351bbe5d684a3b3fa8f22b 100644
--- a/libmongoc/1.23.3/mongoc_uri_option_is_utf8.html
+++ b/libmongoc/1.23.3/mongoc_uri_option_is_utf8.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_set_auth_mechanism.html b/libmongoc/1.23.3/mongoc_uri_set_auth_mechanism.html
index 5409983971d6b7401d6a05e889b257eec9c12116..fba82fa580f779d545f79c00f08dff20e7ab840f 100644
--- a/libmongoc/1.23.3/mongoc_uri_set_auth_mechanism.html
+++ b/libmongoc/1.23.3/mongoc_uri_set_auth_mechanism.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_set_auth_source.html b/libmongoc/1.23.3/mongoc_uri_set_auth_source.html
index 3417a8b7fadb13de0710e1cc664cf7aa6bf8d919..ffc2102779d870cc4106861589608530ac5529a3 100644
--- a/libmongoc/1.23.3/mongoc_uri_set_auth_source.html
+++ b/libmongoc/1.23.3/mongoc_uri_set_auth_source.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_set_compressors.html b/libmongoc/1.23.3/mongoc_uri_set_compressors.html
index 657e7abeee0401dc3af20e5f4a327e01c201d717..952f3f4dabc17982b1178a7da11637e7e2dbd953 100644
--- a/libmongoc/1.23.3/mongoc_uri_set_compressors.html
+++ b/libmongoc/1.23.3/mongoc_uri_set_compressors.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_set_database.html b/libmongoc/1.23.3/mongoc_uri_set_database.html
index 38fce082ca2ca16f3546220db3391fec4316da48..91ca66d16b3a3f9b993f2f6eec0362f6298f3f96 100644
--- a/libmongoc/1.23.3/mongoc_uri_set_database.html
+++ b/libmongoc/1.23.3/mongoc_uri_set_database.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_set_mechanism_properties.html b/libmongoc/1.23.3/mongoc_uri_set_mechanism_properties.html
index 6d4b31ba3f9c53f5c39c98661b37c415d04e4e3c..dfe8792e793f630af0f93b1471868f4805c0e1c8 100644
--- a/libmongoc/1.23.3/mongoc_uri_set_mechanism_properties.html
+++ b/libmongoc/1.23.3/mongoc_uri_set_mechanism_properties.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_set_option_as_bool.html b/libmongoc/1.23.3/mongoc_uri_set_option_as_bool.html
index 8e2efe0deb2c854653e2bf097fe84eb496170e91..575bf52c63b39a6e26223d5152fec58e87b543ab 100644
--- a/libmongoc/1.23.3/mongoc_uri_set_option_as_bool.html
+++ b/libmongoc/1.23.3/mongoc_uri_set_option_as_bool.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_set_option_as_int32.html b/libmongoc/1.23.3/mongoc_uri_set_option_as_int32.html
index 45c2800f40198b89230dd83b3a59f048e193ca23..a84bc40bc08ffd56dc1c84cfea40c1aafff6e75a 100644
--- a/libmongoc/1.23.3/mongoc_uri_set_option_as_int32.html
+++ b/libmongoc/1.23.3/mongoc_uri_set_option_as_int32.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_set_option_as_int64.html b/libmongoc/1.23.3/mongoc_uri_set_option_as_int64.html
index ee7b04b9aef00f50048b7a50a4c4a311b854031b..171e266ec7a03182addd53e2f0752363a8480132 100644
--- a/libmongoc/1.23.3/mongoc_uri_set_option_as_int64.html
+++ b/libmongoc/1.23.3/mongoc_uri_set_option_as_int64.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_set_option_as_utf8.html b/libmongoc/1.23.3/mongoc_uri_set_option_as_utf8.html
index a4780c2044260cef039e9dc2195c2ee4b7459bec..96708bdb984eb0c1dd53336664482156a147f5ad 100644
--- a/libmongoc/1.23.3/mongoc_uri_set_option_as_utf8.html
+++ b/libmongoc/1.23.3/mongoc_uri_set_option_as_utf8.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_set_password.html b/libmongoc/1.23.3/mongoc_uri_set_password.html
index 667afd44924968b0146d7698bb7f8a03d31c389f..2b0d2767b881d57518f588aae007378bc1002c3c 100644
--- a/libmongoc/1.23.3/mongoc_uri_set_password.html
+++ b/libmongoc/1.23.3/mongoc_uri_set_password.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_set_read_concern.html b/libmongoc/1.23.3/mongoc_uri_set_read_concern.html
index b18dfe15193a1f3f71203040ed927d4318b18f57..a1585fd2c13b756b09f126c3dd9f3215648529f2 100644
--- a/libmongoc/1.23.3/mongoc_uri_set_read_concern.html
+++ b/libmongoc/1.23.3/mongoc_uri_set_read_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_set_read_prefs_t.html b/libmongoc/1.23.3/mongoc_uri_set_read_prefs_t.html
index ac2d5574aa5ffb63b4eee85e3766c97bc2d35caa..ca94bb07c674e17833b6057ca3e2919e6c50e044 100644
--- a/libmongoc/1.23.3/mongoc_uri_set_read_prefs_t.html
+++ b/libmongoc/1.23.3/mongoc_uri_set_read_prefs_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_set_username.html b/libmongoc/1.23.3/mongoc_uri_set_username.html
index 79ce68782b10ea8202102c913f150ba26b65a482..5a16c6de473b9aa2d7d486ff16da63860ad7915a 100644
--- a/libmongoc/1.23.3/mongoc_uri_set_username.html
+++ b/libmongoc/1.23.3/mongoc_uri_set_username.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_set_write_concern.html b/libmongoc/1.23.3/mongoc_uri_set_write_concern.html
index 993ec1ff112d8304a72f8bbc70d4b07057f7949c..ed58a4541c22d9be9f2fd03421dbb8bab3fec98f 100644
--- a/libmongoc/1.23.3/mongoc_uri_set_write_concern.html
+++ b/libmongoc/1.23.3/mongoc_uri_set_write_concern.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_t.html b/libmongoc/1.23.3/mongoc_uri_t.html
index 0329444f32c21fcf935f6bc8ddd8d89f9842d596..ebf681ced17831ea369e568c80dfcbdc4cec9762 100644
--- a/libmongoc/1.23.3/mongoc_uri_t.html
+++ b/libmongoc/1.23.3/mongoc_uri_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_uri_unescape.html b/libmongoc/1.23.3/mongoc_uri_unescape.html
index e85892140c3870fe8e563c7d9fc4cf9ea0a6a2eb..f4afe5b46ae780ef39db4e6b1e1cab233df1dcdf 100644
--- a/libmongoc/1.23.3/mongoc_uri_unescape.html
+++ b/libmongoc/1.23.3/mongoc_uri_unescape.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_version.html b/libmongoc/1.23.3/mongoc_version.html
index feea4bb358d07b6d2587d1f50ac8450bbd2e227d..bcccfd15c4b9f9902e5bac71f6a9c539483a439a 100644
--- a/libmongoc/1.23.3/mongoc_version.html
+++ b/libmongoc/1.23.3/mongoc_version.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_append.html b/libmongoc/1.23.3/mongoc_write_concern_append.html
index f82372d8357bcbbafe9aeff06fb71f287513f325..a97a989f9155fbe7153102bd2e2a7de008f7ad33 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_append.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_append.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_copy.html b/libmongoc/1.23.3/mongoc_write_concern_copy.html
index a24f7cfddf1ef5802446e0278962a8c1c90074af..d7ce7330c6e8bd104e2dbfd3de2e18d5e34cce41 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_copy.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_copy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_destroy.html b/libmongoc/1.23.3/mongoc_write_concern_destroy.html
index ef5028c9abc32275505e526d006f3ee4d06b5169..45df371325b887861c431be1a27cb70ce9128540 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_destroy.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_destroy.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_get_fsync.html b/libmongoc/1.23.3/mongoc_write_concern_get_fsync.html
index 0e2b0e00353a0c10d0c51492cb5882afbfafd661..8994204fa9360a89a0153002c7e20b8723e0d46d 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_get_fsync.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_get_fsync.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_get_journal.html b/libmongoc/1.23.3/mongoc_write_concern_get_journal.html
index 645ab65457549e07827ebf97e6fad1ce1e987863..5036cdb1329828294af0a3f99c862e20ba849b68 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_get_journal.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_get_journal.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_get_w.html b/libmongoc/1.23.3/mongoc_write_concern_get_w.html
index 3e5159d62e8bac452a0814ae765387ca10f61f9a..2929077258183c7e6c4e2de49e51d1ae50c674b2 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_get_w.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_get_w.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_get_wmajority.html b/libmongoc/1.23.3/mongoc_write_concern_get_wmajority.html
index 2c53ddabb70c50a910f2ce54a30a5e00f5b1eeb6..1980eec32be34cada8f0fd8c6591f7b483bbb899 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_get_wmajority.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_get_wmajority.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_get_wtag.html b/libmongoc/1.23.3/mongoc_write_concern_get_wtag.html
index 8b687b0e23fe6d0b7b198c6be691c23b7ce2861a..9bc5288a2f49f9421571c0236ea3efaf5310ce7a 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_get_wtag.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_get_wtag.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_get_wtimeout.html b/libmongoc/1.23.3/mongoc_write_concern_get_wtimeout.html
index 3975101960bded4448cb25b26cc29b1a6e8d813b..0c5fd8d3c9d5e0c4b6c94e5c726e285b76ffc381 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_get_wtimeout.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_get_wtimeout.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_get_wtimeout_int64.html b/libmongoc/1.23.3/mongoc_write_concern_get_wtimeout_int64.html
index 42fcb05896842d61f350198f5889f7c4e924f332..6ed593050cfd829b30ed5e0921810a8d8e3892c2 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_get_wtimeout_int64.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_get_wtimeout_int64.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_is_acknowledged.html b/libmongoc/1.23.3/mongoc_write_concern_is_acknowledged.html
index bc7b79595004cf06b0f14eeebd76e99126685752..c98f3e7205b8d55b6031c75b332e640b27b92f8e 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_is_acknowledged.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_is_acknowledged.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_is_default.html b/libmongoc/1.23.3/mongoc_write_concern_is_default.html
index 35a575d4643f92ac83e628e123b345b703aae60a..12c37e361b76408cffde6389836d41f9a78ac721 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_is_default.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_is_default.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_is_valid.html b/libmongoc/1.23.3/mongoc_write_concern_is_valid.html
index e27e5271dec9a66f68be24758e3fc07528f4d0f2..efdb86e3cc6ff1fde8ed5ade67ce9f5733304d31 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_is_valid.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_is_valid.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_journal_is_set.html b/libmongoc/1.23.3/mongoc_write_concern_journal_is_set.html
index ea181f83cec1f879b2fdf243700aaa2d8211e27a..f1cf60bcf50adc524c69a7b9b761baeb5a46e6b5 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_journal_is_set.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_journal_is_set.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_new.html b/libmongoc/1.23.3/mongoc_write_concern_new.html
index 2fcede6f04ac730076ecf9afdfa9ccb767d5ceaa..1e0e9ded9713b92096418655a5c2fce68503ddeb 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_new.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_new.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_set_fsync.html b/libmongoc/1.23.3/mongoc_write_concern_set_fsync.html
index bf156a84e3dfe52017713ba6e82bc31ff2064c0f..582d7343c94f7c6f4b049487f95d68edfba91830 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_set_fsync.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_set_fsync.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_set_journal.html b/libmongoc/1.23.3/mongoc_write_concern_set_journal.html
index 058efa181d5764f0085934ee4632e3b24f9257c7..7329f1a27514593b10f7b2b7c897783e00c872e1 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_set_journal.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_set_journal.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_set_w.html b/libmongoc/1.23.3/mongoc_write_concern_set_w.html
index 9c95ee84279be6ec1e00feb6650de8a207652a6b..42ba2d19097cc949b75ea05dc225373fe3a744f5 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_set_w.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_set_w.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_set_wmajority.html b/libmongoc/1.23.3/mongoc_write_concern_set_wmajority.html
index 96fc0bd877ce3791da535ecfd8c7659b351746ef..3421c86efbc72013c6e2247762534f6cd5e840b4 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_set_wmajority.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_set_wmajority.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_set_wtag.html b/libmongoc/1.23.3/mongoc_write_concern_set_wtag.html
index fb13e46e49d9415992880888efea874c1acee4a3..a0026e42f35a668edb31a7ff3f7e041bd2c61f28 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_set_wtag.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_set_wtag.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_set_wtimeout.html b/libmongoc/1.23.3/mongoc_write_concern_set_wtimeout.html
index d6b9e7438d80680423f440bf7c6aecf5512f0d6b..ec720e5fac5aac10d7cdb8e5f6cc5d0e0c3ed19c 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_set_wtimeout.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_set_wtimeout.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_set_wtimeout_int64.html b/libmongoc/1.23.3/mongoc_write_concern_set_wtimeout_int64.html
index 834158a584ecdcd18756da8cc542091df88939ba..3b45f4844e1f968c8634b84e2e79ad35a445f6c8 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_set_wtimeout_int64.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_set_wtimeout_int64.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/mongoc_write_concern_t.html b/libmongoc/1.23.3/mongoc_write_concern_t.html
index 66375347e5a90da14a842d1adaa1e4c680c45459..511332897ee776f9058fc039cf7618433860017c 100644
--- a/libmongoc/1.23.3/mongoc_write_concern_t.html
+++ b/libmongoc/1.23.3/mongoc_write_concern_t.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/queryable-encryption.html b/libmongoc/1.23.3/queryable-encryption.html
index 8c6e153b95016a41c6e47ef2a92e3f55bb61b854..12f72188c8760d662dd6640bd37feccf4bbd5c9f 100644
--- a/libmongoc/1.23.3/queryable-encryption.html
+++ b/libmongoc/1.23.3/queryable-encryption.html
@@ -36,6 +36,12 @@
+
diff --git a/libmongoc/1.23.3/search.html b/libmongoc/1.23.3/search.html
index 520a13c90c4ec9c5a8fd7deae8e08d0421458fc7..5bf6b777071473c789b39825e8e0ad72ee494c43 100644
--- a/libmongoc/1.23.3/search.html
+++ b/libmongoc/1.23.3/search.html
@@ -43,6 +43,12 @@
+
diff --git a/libmongoc/1.23.3/tutorial.html b/libmongoc/1.23.3/tutorial.html
index 363286332ccc9c733c456b18c4d2d3f8a989d8cd..dfe91e4c035c794126e6bd7532298c402ba49c1c 100644
--- a/libmongoc/1.23.3/tutorial.html
+++ b/libmongoc/1.23.3/tutorial.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/using_client_side_encryption.html b/libmongoc/1.23.3/using_client_side_encryption.html
index ce07abaebbbfd9aa81c541b252931dd909e1287f..bd00cc6161452bec60e7c13944f8ed1b4ff9180c 100644
--- a/libmongoc/1.23.3/using_client_side_encryption.html
+++ b/libmongoc/1.23.3/using_client_side_encryption.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.3/visual-studio-guide.html b/libmongoc/1.23.3/visual-studio-guide.html
index 82536785bc9f83cab6807ff763995e1b695b0cfe..f2b7031be8b4428977d0672abc08ea07a06c9ae9 100644
--- a/libmongoc/1.23.3/visual-studio-guide.html
+++ b/libmongoc/1.23.3/visual-studio-guide.html
@@ -38,6 +38,12 @@
+
diff --git a/libmongoc/1.23.4/.nojekyll b/libmongoc/1.23.4/.nojekyll
new file mode 100644
index 0000000000000000000000000000000000000000..19102815663d23f8b75a47e7a01965dcdc96468c
--- /dev/null
+++ b/libmongoc/1.23.4/.nojekyll
@@ -0,0 +1 @@
+foo
\ No newline at end of file
diff --git a/libmongoc/1.23.4/CMakeLists.txt b/libmongoc/1.23.4/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..202daf7bc716d73f8e8ace2890c0af6889b1f658
--- /dev/null
+++ b/libmongoc/1.23.4/CMakeLists.txt
@@ -0,0 +1,39 @@
+file (GLOB_RECURSE _images_pngs
+ RELATIVE ${PROJECT_SOURCE_DIR}/doc/static
+ ${PROJECT_SOURCE_DIR}/doc/static/*.png
+)
+foreach (png IN LISTS _images_pngs)
+ extra_dist_generated (_images/${png})
+endforeach ()
+
+# Additional generated static files
+extra_dist_generated (
+ .nojekyll
+ objects.inv
+ _static/ajax-loader.gif
+ _static/basic.css
+ _static/comment-bright.png
+ _static/comment-close.png
+ _static/comment.png
+ _static/doctools.js
+ _static/documentation_options.js
+ _static/down-pressed.png
+ _static/down.png
+ _static/file.png
+ _static/jquery.js
+ _static/minus.png
+ _static/plus.png
+ _static/pygments.css
+ _static/readable.css
+ _static/searchtools.js
+ _static/underscore.js
+ _static/up-pressed.png
+ _static/up.png
+ _static/websupport.js
+ search.html
+ searchindex.js
+)
+
+set_dist_list (src_libmongoc_doc_html_DIST
+ CMakeLists.txt
+)
diff --git a/libmongoc/1.23.4/_images/msvc-add-dependencies-static.png b/libmongoc/1.23.4/_images/msvc-add-dependencies-static.png
new file mode 100644
index 0000000000000000000000000000000000000000..b70984e5b94463f3292966ed74d2fb4fc7a92343
Binary files /dev/null and b/libmongoc/1.23.4/_images/msvc-add-dependencies-static.png differ
diff --git a/libmongoc/1.23.4/_images/msvc-add-dependencies.png b/libmongoc/1.23.4/_images/msvc-add-dependencies.png
new file mode 100644
index 0000000000000000000000000000000000000000..3fe2c7ae74660fb2096f6442aba0972d42f77aec
Binary files /dev/null and b/libmongoc/1.23.4/_images/msvc-add-dependencies.png differ
diff --git a/libmongoc/1.23.4/_images/msvc-add-include-directories.png b/libmongoc/1.23.4/_images/msvc-add-include-directories.png
new file mode 100644
index 0000000000000000000000000000000000000000..afd181272db5fc0d6457868e0c4849628a17a12b
Binary files /dev/null and b/libmongoc/1.23.4/_images/msvc-add-include-directories.png differ
diff --git a/libmongoc/1.23.4/_images/msvc-create-project.png b/libmongoc/1.23.4/_images/msvc-create-project.png
new file mode 100644
index 0000000000000000000000000000000000000000..8c7f749c65be2289f93a0e5ddbc0568fe9b982ab
Binary files /dev/null and b/libmongoc/1.23.4/_images/msvc-create-project.png differ
diff --git a/libmongoc/1.23.4/_images/msvc-set-path.png b/libmongoc/1.23.4/_images/msvc-set-path.png
new file mode 100644
index 0000000000000000000000000000000000000000..c135b1a014a61186b2873a9caf80b972d2384c5e
Binary files /dev/null and b/libmongoc/1.23.4/_images/msvc-set-path.png differ
diff --git a/libmongoc/1.23.4/_images/msvc-switch-architecture.png b/libmongoc/1.23.4/_images/msvc-switch-architecture.png
new file mode 100644
index 0000000000000000000000000000000000000000..fdc52d1590a958d565d0a1f13aeb17f5bec62e4d
Binary files /dev/null and b/libmongoc/1.23.4/_images/msvc-switch-architecture.png differ
diff --git a/libmongoc/1.23.4/_static/ajax-loader.gif b/libmongoc/1.23.4/_static/ajax-loader.gif
new file mode 100644
index 0000000000000000000000000000000000000000..61faf8cab23993bd3e1560bff0668bd628642330
Binary files /dev/null and b/libmongoc/1.23.4/_static/ajax-loader.gif differ
diff --git a/libmongoc/1.23.4/_static/basic.css b/libmongoc/1.23.4/_static/basic.css
new file mode 100644
index 0000000000000000000000000000000000000000..19ced1057aebf39d3dac6f6a5d864491231a3e33
--- /dev/null
+++ b/libmongoc/1.23.4/_static/basic.css
@@ -0,0 +1,665 @@
+/*
+ * basic.css
+ * ~~~~~~~~~
+ *
+ * Sphinx stylesheet -- basic theme.
+ *
+ * :copyright: Copyright 2007-2018 by the Sphinx team, see AUTHORS.
+ * :license: BSD, see LICENSE for details.
+ *
+ */
+
+/* -- main layout ----------------------------------------------------------- */
+
+div.clearer {
+ clear: both;
+}
+
+/* -- relbar ---------------------------------------------------------------- */
+
+div.related {
+ width: 100%;
+ font-size: 90%;
+}
+
+div.related h3 {
+ display: none;
+}
+
+div.related ul {
+ margin: 0;
+ padding: 0 0 0 10px;
+ list-style: none;
+}
+
+div.related li {
+ display: inline;
+}
+
+div.related li.right {
+ float: right;
+ margin-right: 5px;
+}
+
+/* -- sidebar --------------------------------------------------------------- */
+
+div.sphinxsidebarwrapper {
+ padding: 10px 5px 0 10px;
+}
+
+div.sphinxsidebar {
+ float: left;
+ width: 230px;
+ margin-left: -100%;
+ font-size: 90%;
+ word-wrap: break-word;
+ overflow-wrap : break-word;
+}
+
+div.sphinxsidebar ul {
+ list-style: none;
+}
+
+div.sphinxsidebar ul ul,
+div.sphinxsidebar ul.want-points {
+ margin-left: 20px;
+ list-style: square;
+}
+
+div.sphinxsidebar ul ul {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+div.sphinxsidebar form {
+ margin-top: 10px;
+}
+
+div.sphinxsidebar input {
+ border: 1px solid #98dbcc;
+ font-family: sans-serif;
+ font-size: 1em;
+}
+
+div.sphinxsidebar #searchbox input[type="text"] {
+ float: left;
+ width: 80%;
+ padding: 0.25em;
+ box-sizing: border-box;
+}
+
+div.sphinxsidebar #searchbox input[type="submit"] {
+ float: left;
+ width: 20%;
+ border-left: none;
+ padding: 0.25em;
+ box-sizing: border-box;
+}
+
+
+img {
+ border: 0;
+ max-width: 100%;
+}
+
+/* -- search page ----------------------------------------------------------- */
+
+ul.search {
+ margin: 10px 0 0 20px;
+ padding: 0;
+}
+
+ul.search li {
+ padding: 5px 0 5px 20px;
+ background-image: url(file.png);
+ background-repeat: no-repeat;
+ background-position: 0 7px;
+}
+
+ul.search li a {
+ font-weight: bold;
+}
+
+ul.search li div.context {
+ color: #888;
+ margin: 2px 0 0 30px;
+ text-align: left;
+}
+
+ul.keywordmatches li.goodmatch a {
+ font-weight: bold;
+}
+
+/* -- index page ------------------------------------------------------------ */
+
+table.contentstable {
+ width: 90%;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+table.contentstable p.biglink {
+ line-height: 150%;
+}
+
+a.biglink {
+ font-size: 1.3em;
+}
+
+span.linkdescr {
+ font-style: italic;
+ padding-top: 5px;
+ font-size: 90%;
+}
+
+/* -- general index --------------------------------------------------------- */
+
+table.indextable {
+ width: 100%;
+}
+
+table.indextable td {
+ text-align: left;
+ vertical-align: top;
+}
+
+table.indextable ul {
+ margin-top: 0;
+ margin-bottom: 0;
+ list-style-type: none;
+}
+
+table.indextable > tbody > tr > td > ul {
+ padding-left: 0em;
+}
+
+table.indextable tr.pcap {
+ height: 10px;
+}
+
+table.indextable tr.cap {
+ margin-top: 10px;
+ background-color: #f2f2f2;
+}
+
+img.toggler {
+ margin-right: 3px;
+ margin-top: 3px;
+ cursor: pointer;
+}
+
+div.modindex-jumpbox {
+ border-top: 1px solid #ddd;
+ border-bottom: 1px solid #ddd;
+ margin: 1em 0 1em 0;
+ padding: 0.4em;
+}
+
+div.genindex-jumpbox {
+ border-top: 1px solid #ddd;
+ border-bottom: 1px solid #ddd;
+ margin: 1em 0 1em 0;
+ padding: 0.4em;
+}
+
+/* -- domain module index --------------------------------------------------- */
+
+table.modindextable td {
+ padding: 2px;
+ border-collapse: collapse;
+}
+
+/* -- general body styles --------------------------------------------------- */
+
+div.body {
+ min-width: 450px;
+ max-width: 800px;
+}
+
+div.body p, div.body dd, div.body li, div.body blockquote {
+ -moz-hyphens: auto;
+ -ms-hyphens: auto;
+ -webkit-hyphens: auto;
+ hyphens: auto;
+}
+
+a.headerlink {
+ visibility: hidden;
+}
+
+h1:hover > a.headerlink,
+h2:hover > a.headerlink,
+h3:hover > a.headerlink,
+h4:hover > a.headerlink,
+h5:hover > a.headerlink,
+h6:hover > a.headerlink,
+dt:hover > a.headerlink,
+caption:hover > a.headerlink,
+p.caption:hover > a.headerlink,
+div.code-block-caption:hover > a.headerlink {
+ visibility: visible;
+}
+
+div.body p.caption {
+ text-align: inherit;
+}
+
+div.body td {
+ text-align: left;
+}
+
+.first {
+ margin-top: 0 !important;
+}
+
+p.rubric {
+ margin-top: 30px;
+ font-weight: bold;
+}
+
+img.align-left, .figure.align-left, object.align-left {
+ clear: left;
+ float: left;
+ margin-right: 1em;
+}
+
+img.align-right, .figure.align-right, object.align-right {
+ clear: right;
+ float: right;
+ margin-left: 1em;
+}
+
+img.align-center, .figure.align-center, object.align-center {
+ display: block;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+.align-left {
+ text-align: left;
+}
+
+.align-center {
+ text-align: center;
+}
+
+.align-right {
+ text-align: right;
+}
+
+/* -- sidebars -------------------------------------------------------------- */
+
+div.sidebar {
+ margin: 0 0 0.5em 1em;
+ border: 1px solid #ddb;
+ padding: 7px 7px 0 7px;
+ background-color: #ffe;
+ width: 40%;
+ float: right;
+}
+
+p.sidebar-title {
+ font-weight: bold;
+}
+
+/* -- topics ---------------------------------------------------------------- */
+
+div.topic {
+ border: 1px solid #ccc;
+ padding: 7px 7px 0 7px;
+ margin: 10px 0 10px 0;
+}
+
+p.topic-title {
+ font-size: 1.1em;
+ font-weight: bold;
+ margin-top: 10px;
+}
+
+/* -- admonitions ----------------------------------------------------------- */
+
+div.admonition {
+ margin-top: 10px;
+ margin-bottom: 10px;
+ padding: 7px;
+}
+
+div.admonition dt {
+ font-weight: bold;
+}
+
+div.admonition dl {
+ margin-bottom: 0;
+}
+
+p.admonition-title {
+ margin: 0px 10px 5px 0px;
+ font-weight: bold;
+}
+
+div.body p.centered {
+ text-align: center;
+ margin-top: 25px;
+}
+
+/* -- tables ---------------------------------------------------------------- */
+
+table.docutils {
+ border: 0;
+ border-collapse: collapse;
+}
+
+table.align-center {
+ margin-left: auto;
+ margin-right: auto;
+}
+
+table caption span.caption-number {
+ font-style: italic;
+}
+
+table caption span.caption-text {
+}
+
+table.docutils td, table.docutils th {
+ padding: 1px 8px 1px 5px;
+ border-top: 0;
+ border-left: 0;
+ border-right: 0;
+ border-bottom: 1px solid #aaa;
+}
+
+table.footnote td, table.footnote th {
+ border: 0 !important;
+}
+
+th {
+ text-align: left;
+ padding-right: 5px;
+}
+
+table.citation {
+ border-left: solid 1px gray;
+ margin-left: 1px;
+}
+
+table.citation td {
+ border-bottom: none;
+}
+
+/* -- figures --------------------------------------------------------------- */
+
+div.figure {
+ margin: 0.5em;
+ padding: 0.5em;
+}
+
+div.figure p.caption {
+ padding: 0.3em;
+}
+
+div.figure p.caption span.caption-number {
+ font-style: italic;
+}
+
+div.figure p.caption span.caption-text {
+}
+
+/* -- field list styles ----------------------------------------------------- */
+
+table.field-list td, table.field-list th {
+ border: 0 !important;
+}
+
+.field-list ul {
+ margin: 0;
+ padding-left: 1em;
+}
+
+.field-list p {
+ margin: 0;
+}
+
+.field-name {
+ -moz-hyphens: manual;
+ -ms-hyphens: manual;
+ -webkit-hyphens: manual;
+ hyphens: manual;
+}
+
+/* -- other body styles ----------------------------------------------------- */
+
+ol.arabic {
+ list-style: decimal;
+}
+
+ol.loweralpha {
+ list-style: lower-alpha;
+}
+
+ol.upperalpha {
+ list-style: upper-alpha;
+}
+
+ol.lowerroman {
+ list-style: lower-roman;
+}
+
+ol.upperroman {
+ list-style: upper-roman;
+}
+
+dl {
+ margin-bottom: 15px;
+}
+
+dd p {
+ margin-top: 0px;
+}
+
+dd ul, dd table {
+ margin-bottom: 10px;
+}
+
+dd {
+ margin-top: 3px;
+ margin-bottom: 10px;
+ margin-left: 30px;
+}
+
+dt:target, span.highlighted {
+ background-color: #fbe54e;
+}
+
+rect.highlighted {
+ fill: #fbe54e;
+}
+
+dl.glossary dt {
+ font-weight: bold;
+ font-size: 1.1em;
+}
+
+.optional {
+ font-size: 1.3em;
+}
+
+.sig-paren {
+ font-size: larger;
+}
+
+.versionmodified {
+ font-style: italic;
+}
+
+.system-message {
+ background-color: #fda;
+ padding: 5px;
+ border: 3px solid red;
+}
+
+.footnote:target {
+ background-color: #ffa;
+}
+
+.line-block {
+ display: block;
+ margin-top: 1em;
+ margin-bottom: 1em;
+}
+
+.line-block .line-block {
+ margin-top: 0;
+ margin-bottom: 0;
+ margin-left: 1.5em;
+}
+
+.guilabel, .menuselection {
+ font-family: sans-serif;
+}
+
+.accelerator {
+ text-decoration: underline;
+}
+
+.classifier {
+ font-style: oblique;
+}
+
+abbr, acronym {
+ border-bottom: dotted 1px;
+ cursor: help;
+}
+
+/* -- code displays --------------------------------------------------------- */
+
+pre {
+ overflow: auto;
+ overflow-y: hidden; /* fixes display issues on Chrome browsers */
+}
+
+span.pre {
+ -moz-hyphens: none;
+ -ms-hyphens: none;
+ -webkit-hyphens: none;
+ hyphens: none;
+}
+
+td.linenos pre {
+ padding: 5px 0px;
+ border: 0;
+ background-color: transparent;
+ color: #aaa;
+}
+
+table.highlighttable {
+ margin-left: 0.5em;
+}
+
+table.highlighttable td {
+ padding: 0 0.5em 0 0.5em;
+}
+
+div.code-block-caption {
+ padding: 2px 5px;
+ font-size: small;
+}
+
+div.code-block-caption code {
+ background-color: transparent;
+}
+
+div.code-block-caption + div > div.highlight > pre {
+ margin-top: 0;
+}
+
+div.code-block-caption span.caption-number {
+ padding: 0.1em 0.3em;
+ font-style: italic;
+}
+
+div.code-block-caption span.caption-text {
+}
+
+div.literal-block-wrapper {
+ padding: 1em 1em 0;
+}
+
+div.literal-block-wrapper div.highlight {
+ margin: 0;
+}
+
+code.descname {
+ background-color: transparent;
+ font-weight: bold;
+ font-size: 1.2em;
+}
+
+code.descclassname {
+ background-color: transparent;
+}
+
+code.xref, a code {
+ background-color: transparent;
+ font-weight: bold;
+}
+
+h1 code, h2 code, h3 code, h4 code, h5 code, h6 code {
+ background-color: transparent;
+}
+
+.viewcode-link {
+ float: right;
+}
+
+.viewcode-back {
+ float: right;
+ font-family: sans-serif;
+}
+
+div.viewcode-block:target {
+ margin: -1px -10px;
+ padding: 0 10px;
+}
+
+/* -- math display ---------------------------------------------------------- */
+
+img.math {
+ vertical-align: middle;
+}
+
+div.body div.math p {
+ text-align: center;
+}
+
+span.eqno {
+ float: right;
+}
+
+span.eqno a.headerlink {
+ position: relative;
+ left: 0px;
+ z-index: 1;
+}
+
+div.math:hover a.headerlink {
+ visibility: visible;
+}
+
+/* -- printout stylesheet --------------------------------------------------- */
+
+@media print {
+ div.document,
+ div.documentwrapper,
+ div.bodywrapper {
+ margin: 0 !important;
+ width: 100%;
+ }
+
+ div.sphinxsidebar,
+ div.related,
+ div.footer,
+ #top-link {
+ display: none;
+ }
+}
\ No newline at end of file
diff --git a/libmongoc/1.23.4/_static/comment-bright.png b/libmongoc/1.23.4/_static/comment-bright.png
new file mode 100644
index 0000000000000000000000000000000000000000..15e27edb12ac25701ac0ac21b97b52bb4e45415e
Binary files /dev/null and b/libmongoc/1.23.4/_static/comment-bright.png differ
diff --git a/libmongoc/1.23.4/_static/comment-close.png b/libmongoc/1.23.4/_static/comment-close.png
new file mode 100644
index 0000000000000000000000000000000000000000..4d91bcf57de866a901a89a2a68c0f36af1114841
Binary files /dev/null and b/libmongoc/1.23.4/_static/comment-close.png differ
diff --git a/libmongoc/1.23.4/_static/comment.png b/libmongoc/1.23.4/_static/comment.png
new file mode 100644
index 0000000000000000000000000000000000000000..dfbc0cbd512bdeefcb1984c99d8e577efb77f006
Binary files /dev/null and b/libmongoc/1.23.4/_static/comment.png differ
diff --git a/libmongoc/1.23.4/_static/doctools.js b/libmongoc/1.23.4/_static/doctools.js
new file mode 100644
index 0000000000000000000000000000000000000000..d8928926bf24bb081d91a12f7b92e1b2d8b142b6
--- /dev/null
+++ b/libmongoc/1.23.4/_static/doctools.js
@@ -0,0 +1,313 @@
+/*
+ * doctools.js
+ * ~~~~~~~~~~~
+ *
+ * Sphinx JavaScript utilities for all documentation.
+ *
+ * :copyright: Copyright 2007-2018 by the Sphinx team, see AUTHORS.
+ * :license: BSD, see LICENSE for details.
+ *
+ */
+
+/**
+ * select a different prefix for underscore
+ */
+$u = _.noConflict();
+
+/**
+ * make the code below compatible with browsers without
+ * an installed firebug like debugger
+if (!window.console || !console.firebug) {
+ var names = ["log", "debug", "info", "warn", "error", "assert", "dir",
+ "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace",
+ "profile", "profileEnd"];
+ window.console = {};
+ for (var i = 0; i < names.length; ++i)
+ window.console[names[i]] = function() {};
+}
+ */
+
+/**
+ * small helper function to urldecode strings
+ */
+jQuery.urldecode = function(x) {
+ return decodeURIComponent(x).replace(/\+/g, ' ');
+};
+
+/**
+ * small helper function to urlencode strings
+ */
+jQuery.urlencode = encodeURIComponent;
+
+/**
+ * This function returns the parsed url parameters of the
+ * current request. Multiple values per key are supported,
+ * it will always return arrays of strings for the value parts.
+ */
+jQuery.getQueryParameters = function(s) {
+ if (typeof s === 'undefined')
+ s = document.location.search;
+ var parts = s.substr(s.indexOf('?') + 1).split('&');
+ var result = {};
+ for (var i = 0; i < parts.length; i++) {
+ var tmp = parts[i].split('=', 2);
+ var key = jQuery.urldecode(tmp[0]);
+ var value = jQuery.urldecode(tmp[1]);
+ if (key in result)
+ result[key].push(value);
+ else
+ result[key] = [value];
+ }
+ return result;
+};
+
+/**
+ * highlight a given string on a jquery object by wrapping it in
+ * span elements with the given class name.
+ */
+jQuery.fn.highlightText = function(text, className) {
+ function highlight(node, addItems) {
+ if (node.nodeType === 3) {
+ var val = node.nodeValue;
+ var pos = val.toLowerCase().indexOf(text);
+ if (pos >= 0 &&
+ !jQuery(node.parentNode).hasClass(className) &&
+ !jQuery(node.parentNode).hasClass("nohighlight")) {
+ var span;
+ var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg");
+ if (isInSVG) {
+ span = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
+ } else {
+ span = document.createElement("span");
+ span.className = className;
+ }
+ span.appendChild(document.createTextNode(val.substr(pos, text.length)));
+ node.parentNode.insertBefore(span, node.parentNode.insertBefore(
+ document.createTextNode(val.substr(pos + text.length)),
+ node.nextSibling));
+ node.nodeValue = val.substr(0, pos);
+ if (isInSVG) {
+ var bbox = span.getBBox();
+ var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect");
+ rect.x.baseVal.value = bbox.x;
+ rect.y.baseVal.value = bbox.y;
+ rect.width.baseVal.value = bbox.width;
+ rect.height.baseVal.value = bbox.height;
+ rect.setAttribute('class', className);
+ var parentOfText = node.parentNode.parentNode;
+ addItems.push({
+ "parent": node.parentNode,
+ "target": rect});
+ }
+ }
+ }
+ else if (!jQuery(node).is("button, select, textarea")) {
+ jQuery.each(node.childNodes, function() {
+ highlight(this, addItems);
+ });
+ }
+ }
+ var addItems = [];
+ var result = this.each(function() {
+ highlight(this, addItems);
+ });
+ for (var i = 0; i < addItems.length; ++i) {
+ jQuery(addItems[i].parent).before(addItems[i].target);
+ }
+ return result;
+};
+
+/*
+ * backward compatibility for jQuery.browser
+ * This will be supported until firefox bug is fixed.
+ */
+if (!jQuery.browser) {
+ jQuery.uaMatch = function(ua) {
+ ua = ua.toLowerCase();
+
+ var match = /(chrome)[ \/]([\w.]+)/.exec(ua) ||
+ /(webkit)[ \/]([\w.]+)/.exec(ua) ||
+ /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) ||
+ /(msie) ([\w.]+)/.exec(ua) ||
+ ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) ||
+ [];
+
+ return {
+ browser: match[ 1 ] || "",
+ version: match[ 2 ] || "0"
+ };
+ };
+ jQuery.browser = {};
+ jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true;
+}
+
+/**
+ * Small JavaScript module for the documentation.
+ */
+var Documentation = {
+
+ init : function() {
+ this.fixFirefoxAnchorBug();
+ this.highlightSearchWords();
+ this.initIndexTable();
+
+ },
+
+ /**
+ * i18n support
+ */
+ TRANSLATIONS : {},
+ PLURAL_EXPR : function(n) { return n === 1 ? 0 : 1; },
+ LOCALE : 'unknown',
+
+ // gettext and ngettext don't access this so that the functions
+ // can safely bound to a different name (_ = Documentation.gettext)
+ gettext : function(string) {
+ var translated = Documentation.TRANSLATIONS[string];
+ if (typeof translated === 'undefined')
+ return string;
+ return (typeof translated === 'string') ? translated : translated[0];
+ },
+
+ ngettext : function(singular, plural, n) {
+ var translated = Documentation.TRANSLATIONS[singular];
+ if (typeof translated === 'undefined')
+ return (n == 1) ? singular : plural;
+ return translated[Documentation.PLURALEXPR(n)];
+ },
+
+ addTranslations : function(catalog) {
+ for (var key in catalog.messages)
+ this.TRANSLATIONS[key] = catalog.messages[key];
+ this.PLURAL_EXPR = new Function('n', 'return +(' + catalog.plural_expr + ')');
+ this.LOCALE = catalog.locale;
+ },
+
+ /**
+ * add context elements like header anchor links
+ */
+ addContextElements : function() {
+ $('div[id] > :header:first').each(function() {
+ $('').
+ attr('href', '#' + this.id).
+ attr('title', _('Permalink to this headline')).
+ appendTo(this);
+ });
+ $('dt[id]').each(function() {
+ $('').
+ attr('href', '#' + this.id).
+ attr('title', _('Permalink to this definition')).
+ appendTo(this);
+ });
+ },
+
+ /**
+ * workaround a firefox stupidity
+ * see: https://bugzilla.mozilla.org/show_bug.cgi?id=645075
+ */
+ fixFirefoxAnchorBug : function() {
+ if (document.location.hash && $.browser.mozilla)
+ window.setTimeout(function() {
+ document.location.href += '';
+ }, 10);
+ },
+
+ /**
+ * highlight the search words provided in the url in the text
+ */
+ highlightSearchWords : function() {
+ var params = $.getQueryParameters();
+ var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : [];
+ if (terms.length) {
+ var body = $('div.body');
+ if (!body.length) {
+ body = $('body');
+ }
+ window.setTimeout(function() {
+ $.each(terms, function() {
+ body.highlightText(this.toLowerCase(), 'highlighted');
+ });
+ }, 10);
+ $('
' + _('Hide Search Matches') + '
')
+ .appendTo($('#searchbox'));
+ }
+ },
+
+ /**
+ * init the domain index toggle buttons
+ */
+ initIndexTable : function() {
+ var togglers = $('img.toggler').click(function() {
+ var src = $(this).attr('src');
+ var idnum = $(this).attr('id').substr(7);
+ $('tr.cg-' + idnum).toggle();
+ if (src.substr(-9) === 'minus.png')
+ $(this).attr('src', src.substr(0, src.length-9) + 'plus.png');
+ else
+ $(this).attr('src', src.substr(0, src.length-8) + 'minus.png');
+ }).css('display', '');
+ if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) {
+ togglers.click();
+ }
+ },
+
+ /**
+ * helper function to hide the search marks again
+ */
+ hideSearchWords : function() {
+ $('#searchbox .highlight-link').fadeOut(300);
+ $('span.highlighted').removeClass('highlighted');
+ },
+
+ /**
+ * make the url absolute
+ */
+ makeURL : function(relativeURL) {
+ return DOCUMENTATION_OPTIONS.URL_ROOT + '/' + relativeURL;
+ },
+
+ /**
+ * get the current relative url
+ */
+ getCurrentURL : function() {
+ var path = document.location.pathname;
+ var parts = path.split(/\//);
+ $.each(DOCUMENTATION_OPTIONS.URL_ROOT.split(/\//), function() {
+ if (this === '..')
+ parts.pop();
+ });
+ var url = parts.join('/');
+ return path.substring(url.lastIndexOf('/') + 1, path.length - 1);
+ },
+
+ initOnKeyListeners: function() {
+ $(document).keyup(function(event) {
+ var activeElementType = document.activeElement.tagName;
+ // don't navigate when in search box or textarea
+ if (activeElementType !== 'TEXTAREA' && activeElementType !== 'INPUT' && activeElementType !== 'SELECT') {
+ switch (event.keyCode) {
+ case 37: // left
+ var prevHref = $('link[rel="prev"]').prop('href');
+ if (prevHref) {
+ window.location.href = prevHref;
+ return false;
+ }
+ case 39: // right
+ var nextHref = $('link[rel="next"]').prop('href');
+ if (nextHref) {
+ window.location.href = nextHref;
+ return false;
+ }
+ }
+ }
+ });
+ }
+};
+
+// quick alias for translations
+_ = Documentation.gettext;
+
+$(document).ready(function() {
+ Documentation.init();
+});
\ No newline at end of file
diff --git a/libmongoc/1.23.4/_static/documentation_options.js b/libmongoc/1.23.4/_static/documentation_options.js
new file mode 100644
index 0000000000000000000000000000000000000000..bc12cb35cdbb5228850f6e53832f07a9febac8ed
--- /dev/null
+++ b/libmongoc/1.23.4/_static/documentation_options.js
@@ -0,0 +1,9 @@
+var DOCUMENTATION_OPTIONS = {
+ URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'),
+ VERSION: '',
+ LANGUAGE: 'en',
+ COLLAPSE_INDEX: false,
+ FILE_SUFFIX: '.html',
+ HAS_SOURCE: false,
+ SOURCELINK_SUFFIX: '.txt'
+};
\ No newline at end of file
diff --git a/libmongoc/1.23.4/_static/down-pressed.png b/libmongoc/1.23.4/_static/down-pressed.png
new file mode 100644
index 0000000000000000000000000000000000000000..5756c8cad8854722893dc70b9eb4bb0400343a39
Binary files /dev/null and b/libmongoc/1.23.4/_static/down-pressed.png differ
diff --git a/libmongoc/1.23.4/_static/down.png b/libmongoc/1.23.4/_static/down.png
new file mode 100644
index 0000000000000000000000000000000000000000..1b3bdad2ceffae91cee61b32f3295f9bbe646e48
Binary files /dev/null and b/libmongoc/1.23.4/_static/down.png differ
diff --git a/libmongoc/1.23.4/_static/file.png b/libmongoc/1.23.4/_static/file.png
new file mode 100644
index 0000000000000000000000000000000000000000..a858a410e4faa62ce324d814e4b816fff83a6fb3
Binary files /dev/null and b/libmongoc/1.23.4/_static/file.png differ
diff --git a/libmongoc/1.23.4/_static/jquery-3.2.1.js b/libmongoc/1.23.4/_static/jquery-3.2.1.js
new file mode 100644
index 0000000000000000000000000000000000000000..d2d8ca4790e52b0537f3cbb7dcd766099b789583
--- /dev/null
+++ b/libmongoc/1.23.4/_static/jquery-3.2.1.js
@@ -0,0 +1,10253 @@
+/*!
+ * jQuery JavaScript Library v3.2.1
+ * https://jquery.com/
+ *
+ * Includes Sizzle.js
+ * https://sizzlejs.com/
+ *
+ * Copyright JS Foundation and other contributors
+ * Released under the MIT license
+ * https://jquery.org/license
+ *
+ * Date: 2017-03-20T18:59Z
+ */
+( function( global, factory ) {
+
+ "use strict";
+
+ if ( typeof module === "object" && typeof module.exports === "object" ) {
+
+ // For CommonJS and CommonJS-like environments where a proper `window`
+ // is present, execute the factory and get jQuery.
+ // For environments that do not have a `window` with a `document`
+ // (such as Node.js), expose a factory as module.exports.
+ // This accentuates the need for the creation of a real `window`.
+ // e.g. var jQuery = require("jquery")(window);
+ // See ticket #14549 for more info.
+ module.exports = global.document ?
+ factory( global, true ) :
+ function( w ) {
+ if ( !w.document ) {
+ throw new Error( "jQuery requires a window with a document" );
+ }
+ return factory( w );
+ };
+ } else {
+ factory( global );
+ }
+
+// Pass this if window is not defined yet
+} )( typeof window !== "undefined" ? window : this, function( window, noGlobal ) {
+
+// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1
+// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode
+// arguments.callee.caller (trac-13335). But as of jQuery 3.0 (2016), strict mode should be common
+// enough that all such attempts are guarded in a try block.
+"use strict";
+
+var arr = [];
+
+var document = window.document;
+
+var getProto = Object.getPrototypeOf;
+
+var slice = arr.slice;
+
+var concat = arr.concat;
+
+var push = arr.push;
+
+var indexOf = arr.indexOf;
+
+var class2type = {};
+
+var toString = class2type.toString;
+
+var hasOwn = class2type.hasOwnProperty;
+
+var fnToString = hasOwn.toString;
+
+var ObjectFunctionString = fnToString.call( Object );
+
+var support = {};
+
+
+
+ function DOMEval( code, doc ) {
+ doc = doc || document;
+
+ var script = doc.createElement( "script" );
+
+ script.text = code;
+ doc.head.appendChild( script ).parentNode.removeChild( script );
+ }
+/* global Symbol */
+// Defining this global in .eslintrc.json would create a danger of using the global
+// unguarded in another place, it seems safer to define global only for this module
+
+
+
+var
+ version = "3.2.1",
+
+ // Define a local copy of jQuery
+ jQuery = function( selector, context ) {
+
+ // The jQuery object is actually just the init constructor 'enhanced'
+ // Need init if jQuery is called (just allow error to be thrown if not included)
+ return new jQuery.fn.init( selector, context );
+ },
+
+ // Support: Android <=4.0 only
+ // Make sure we trim BOM and NBSP
+ rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
+
+ // Matches dashed string for camelizing
+ rmsPrefix = /^-ms-/,
+ rdashAlpha = /-([a-z])/g,
+
+ // Used by jQuery.camelCase as callback to replace()
+ fcamelCase = function( all, letter ) {
+ return letter.toUpperCase();
+ };
+
+jQuery.fn = jQuery.prototype = {
+
+ // The current version of jQuery being used
+ jquery: version,
+
+ constructor: jQuery,
+
+ // The default length of a jQuery object is 0
+ length: 0,
+
+ toArray: function() {
+ return slice.call( this );
+ },
+
+ // Get the Nth element in the matched element set OR
+ // Get the whole matched element set as a clean array
+ get: function( num ) {
+
+ // Return all the elements in a clean array
+ if ( num == null ) {
+ return slice.call( this );
+ }
+
+ // Return just the one element from the set
+ return num < 0 ? this[ num + this.length ] : this[ num ];
+ },
+
+ // Take an array of elements and push it onto the stack
+ // (returning the new matched element set)
+ pushStack: function( elems ) {
+
+ // Build a new jQuery matched element set
+ var ret = jQuery.merge( this.constructor(), elems );
+
+ // Add the old object onto the stack (as a reference)
+ ret.prevObject = this;
+
+ // Return the newly-formed element set
+ return ret;
+ },
+
+ // Execute a callback for every element in the matched set.
+ each: function( callback ) {
+ return jQuery.each( this, callback );
+ },
+
+ map: function( callback ) {
+ return this.pushStack( jQuery.map( this, function( elem, i ) {
+ return callback.call( elem, i, elem );
+ } ) );
+ },
+
+ slice: function() {
+ return this.pushStack( slice.apply( this, arguments ) );
+ },
+
+ first: function() {
+ return this.eq( 0 );
+ },
+
+ last: function() {
+ return this.eq( -1 );
+ },
+
+ eq: function( i ) {
+ var len = this.length,
+ j = +i + ( i < 0 ? len : 0 );
+ return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] );
+ },
+
+ end: function() {
+ return this.prevObject || this.constructor();
+ },
+
+ // For internal use only.
+ // Behaves like an Array's method, not like a jQuery method.
+ push: push,
+ sort: arr.sort,
+ splice: arr.splice
+};
+
+jQuery.extend = jQuery.fn.extend = function() {
+ var options, name, src, copy, copyIsArray, clone,
+ target = arguments[ 0 ] || {},
+ i = 1,
+ length = arguments.length,
+ deep = false;
+
+ // Handle a deep copy situation
+ if ( typeof target === "boolean" ) {
+ deep = target;
+
+ // Skip the boolean and the target
+ target = arguments[ i ] || {};
+ i++;
+ }
+
+ // Handle case when target is a string or something (possible in deep copy)
+ if ( typeof target !== "object" && !jQuery.isFunction( target ) ) {
+ target = {};
+ }
+
+ // Extend jQuery itself if only one argument is passed
+ if ( i === length ) {
+ target = this;
+ i--;
+ }
+
+ for ( ; i < length; i++ ) {
+
+ // Only deal with non-null/undefined values
+ if ( ( options = arguments[ i ] ) != null ) {
+
+ // Extend the base object
+ for ( name in options ) {
+ src = target[ name ];
+ copy = options[ name ];
+
+ // Prevent never-ending loop
+ if ( target === copy ) {
+ continue;
+ }
+
+ // Recurse if we're merging plain objects or arrays
+ if ( deep && copy && ( jQuery.isPlainObject( copy ) ||
+ ( copyIsArray = Array.isArray( copy ) ) ) ) {
+
+ if ( copyIsArray ) {
+ copyIsArray = false;
+ clone = src && Array.isArray( src ) ? src : [];
+
+ } else {
+ clone = src && jQuery.isPlainObject( src ) ? src : {};
+ }
+
+ // Never move original objects, clone them
+ target[ name ] = jQuery.extend( deep, clone, copy );
+
+ // Don't bring in undefined values
+ } else if ( copy !== undefined ) {
+ target[ name ] = copy;
+ }
+ }
+ }
+ }
+
+ // Return the modified object
+ return target;
+};
+
+jQuery.extend( {
+
+ // Unique for each copy of jQuery on the page
+ expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ),
+
+ // Assume jQuery is ready without the ready module
+ isReady: true,
+
+ error: function( msg ) {
+ throw new Error( msg );
+ },
+
+ noop: function() {},
+
+ isFunction: function( obj ) {
+ return jQuery.type( obj ) === "function";
+ },
+
+ isWindow: function( obj ) {
+ return obj != null && obj === obj.window;
+ },
+
+ isNumeric: function( obj ) {
+
+ // As of jQuery 3.0, isNumeric is limited to
+ // strings and numbers (primitives or objects)
+ // that can be coerced to finite numbers (gh-2662)
+ var type = jQuery.type( obj );
+ return ( type === "number" || type === "string" ) &&
+
+ // parseFloat NaNs numeric-cast false positives ("")
+ // ...but misinterprets leading-number strings, particularly hex literals ("0x...")
+ // subtraction forces infinities to NaN
+ !isNaN( obj - parseFloat( obj ) );
+ },
+
+ isPlainObject: function( obj ) {
+ var proto, Ctor;
+
+ // Detect obvious negatives
+ // Use toString instead of jQuery.type to catch host objects
+ if ( !obj || toString.call( obj ) !== "[object Object]" ) {
+ return false;
+ }
+
+ proto = getProto( obj );
+
+ // Objects with no prototype (e.g., `Object.create( null )`) are plain
+ if ( !proto ) {
+ return true;
+ }
+
+ // Objects with prototype are plain iff they were constructed by a global Object function
+ Ctor = hasOwn.call( proto, "constructor" ) && proto.constructor;
+ return typeof Ctor === "function" && fnToString.call( Ctor ) === ObjectFunctionString;
+ },
+
+ isEmptyObject: function( obj ) {
+
+ /* eslint-disable no-unused-vars */
+ // See https://github.com/eslint/eslint/issues/6125
+ var name;
+
+ for ( name in obj ) {
+ return false;
+ }
+ return true;
+ },
+
+ type: function( obj ) {
+ if ( obj == null ) {
+ return obj + "";
+ }
+
+ // Support: Android <=2.3 only (functionish RegExp)
+ return typeof obj === "object" || typeof obj === "function" ?
+ class2type[ toString.call( obj ) ] || "object" :
+ typeof obj;
+ },
+
+ // Evaluates a script in a global context
+ globalEval: function( code ) {
+ DOMEval( code );
+ },
+
+ // Convert dashed to camelCase; used by the css and data modules
+ // Support: IE <=9 - 11, Edge 12 - 13
+ // Microsoft forgot to hump their vendor prefix (#9572)
+ camelCase: function( string ) {
+ return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase );
+ },
+
+ each: function( obj, callback ) {
+ var length, i = 0;
+
+ if ( isArrayLike( obj ) ) {
+ length = obj.length;
+ for ( ; i < length; i++ ) {
+ if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
+ break;
+ }
+ }
+ } else {
+ for ( i in obj ) {
+ if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
+ break;
+ }
+ }
+ }
+
+ return obj;
+ },
+
+ // Support: Android <=4.0 only
+ trim: function( text ) {
+ return text == null ?
+ "" :
+ ( text + "" ).replace( rtrim, "" );
+ },
+
+ // results is for internal usage only
+ makeArray: function( arr, results ) {
+ var ret = results || [];
+
+ if ( arr != null ) {
+ if ( isArrayLike( Object( arr ) ) ) {
+ jQuery.merge( ret,
+ typeof arr === "string" ?
+ [ arr ] : arr
+ );
+ } else {
+ push.call( ret, arr );
+ }
+ }
+
+ return ret;
+ },
+
+ inArray: function( elem, arr, i ) {
+ return arr == null ? -1 : indexOf.call( arr, elem, i );
+ },
+
+ // Support: Android <=4.0 only, PhantomJS 1 only
+ // push.apply(_, arraylike) throws on ancient WebKit
+ merge: function( first, second ) {
+ var len = +second.length,
+ j = 0,
+ i = first.length;
+
+ for ( ; j < len; j++ ) {
+ first[ i++ ] = second[ j ];
+ }
+
+ first.length = i;
+
+ return first;
+ },
+
+ grep: function( elems, callback, invert ) {
+ var callbackInverse,
+ matches = [],
+ i = 0,
+ length = elems.length,
+ callbackExpect = !invert;
+
+ // Go through the array, only saving the items
+ // that pass the validator function
+ for ( ; i < length; i++ ) {
+ callbackInverse = !callback( elems[ i ], i );
+ if ( callbackInverse !== callbackExpect ) {
+ matches.push( elems[ i ] );
+ }
+ }
+
+ return matches;
+ },
+
+ // arg is for internal usage only
+ map: function( elems, callback, arg ) {
+ var length, value,
+ i = 0,
+ ret = [];
+
+ // Go through the array, translating each of the items to their new values
+ if ( isArrayLike( elems ) ) {
+ length = elems.length;
+ for ( ; i < length; i++ ) {
+ value = callback( elems[ i ], i, arg );
+
+ if ( value != null ) {
+ ret.push( value );
+ }
+ }
+
+ // Go through every key on the object,
+ } else {
+ for ( i in elems ) {
+ value = callback( elems[ i ], i, arg );
+
+ if ( value != null ) {
+ ret.push( value );
+ }
+ }
+ }
+
+ // Flatten any nested arrays
+ return concat.apply( [], ret );
+ },
+
+ // A global GUID counter for objects
+ guid: 1,
+
+ // Bind a function to a context, optionally partially applying any
+ // arguments.
+ proxy: function( fn, context ) {
+ var tmp, args, proxy;
+
+ if ( typeof context === "string" ) {
+ tmp = fn[ context ];
+ context = fn;
+ fn = tmp;
+ }
+
+ // Quick check to determine if target is callable, in the spec
+ // this throws a TypeError, but we will just return undefined.
+ if ( !jQuery.isFunction( fn ) ) {
+ return undefined;
+ }
+
+ // Simulated bind
+ args = slice.call( arguments, 2 );
+ proxy = function() {
+ return fn.apply( context || this, args.concat( slice.call( arguments ) ) );
+ };
+
+ // Set the guid of unique handler to the same of original handler, so it can be removed
+ proxy.guid = fn.guid = fn.guid || jQuery.guid++;
+
+ return proxy;
+ },
+
+ now: Date.now,
+
+ // jQuery.support is not used in Core but other projects attach their
+ // properties to it so it needs to exist.
+ support: support
+} );
+
+if ( typeof Symbol === "function" ) {
+ jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ];
+}
+
+// Populate the class2type map
+jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ),
+function( i, name ) {
+ class2type[ "[object " + name + "]" ] = name.toLowerCase();
+} );
+
+function isArrayLike( obj ) {
+
+ // Support: real iOS 8.2 only (not reproducible in simulator)
+ // `in` check used to prevent JIT error (gh-2145)
+ // hasOwn isn't used here due to false negatives
+ // regarding Nodelist length in IE
+ var length = !!obj && "length" in obj && obj.length,
+ type = jQuery.type( obj );
+
+ if ( type === "function" || jQuery.isWindow( obj ) ) {
+ return false;
+ }
+
+ return type === "array" || length === 0 ||
+ typeof length === "number" && length > 0 && ( length - 1 ) in obj;
+}
+var Sizzle =
+/*!
+ * Sizzle CSS Selector Engine v2.3.3
+ * https://sizzlejs.com/
+ *
+ * Copyright jQuery Foundation and other contributors
+ * Released under the MIT license
+ * http://jquery.org/license
+ *
+ * Date: 2016-08-08
+ */
+(function( window ) {
+
+var i,
+ support,
+ Expr,
+ getText,
+ isXML,
+ tokenize,
+ compile,
+ select,
+ outermostContext,
+ sortInput,
+ hasDuplicate,
+
+ // Local document vars
+ setDocument,
+ document,
+ docElem,
+ documentIsHTML,
+ rbuggyQSA,
+ rbuggyMatches,
+ matches,
+ contains,
+
+ // Instance-specific data
+ expando = "sizzle" + 1 * new Date(),
+ preferredDoc = window.document,
+ dirruns = 0,
+ done = 0,
+ classCache = createCache(),
+ tokenCache = createCache(),
+ compilerCache = createCache(),
+ sortOrder = function( a, b ) {
+ if ( a === b ) {
+ hasDuplicate = true;
+ }
+ return 0;
+ },
+
+ // Instance methods
+ hasOwn = ({}).hasOwnProperty,
+ arr = [],
+ pop = arr.pop,
+ push_native = arr.push,
+ push = arr.push,
+ slice = arr.slice,
+ // Use a stripped-down indexOf as it's faster than native
+ // https://jsperf.com/thor-indexof-vs-for/5
+ indexOf = function( list, elem ) {
+ var i = 0,
+ len = list.length;
+ for ( ; i < len; i++ ) {
+ if ( list[i] === elem ) {
+ return i;
+ }
+ }
+ return -1;
+ },
+
+ booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
+
+ // Regular expressions
+
+ // http://www.w3.org/TR/css3-selectors/#whitespace
+ whitespace = "[\\x20\\t\\r\\n\\f]",
+
+ // http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier
+ identifier = "(?:\\\\.|[\\w-]|[^\0-\\xa0])+",
+
+ // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors
+ attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace +
+ // Operator (capture 2)
+ "*([*^$|!~]?=)" + whitespace +
+ // "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]"
+ "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace +
+ "*\\]",
+
+ pseudos = ":(" + identifier + ")(?:\\((" +
+ // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments:
+ // 1. quoted (capture 3; capture 4 or capture 5)
+ "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" +
+ // 2. simple (capture 6)
+ "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" +
+ // 3. anything else (capture 2)
+ ".*" +
+ ")\\)|)",
+
+ // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter
+ rwhitespace = new RegExp( whitespace + "+", "g" ),
+ rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ),
+
+ rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ),
+ rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ),
+
+ rattributeQuotes = new RegExp( "=" + whitespace + "*([^\\]'\"]*?)" + whitespace + "*\\]", "g" ),
+
+ rpseudo = new RegExp( pseudos ),
+ ridentifier = new RegExp( "^" + identifier + "$" ),
+
+ matchExpr = {
+ "ID": new RegExp( "^#(" + identifier + ")" ),
+ "CLASS": new RegExp( "^\\.(" + identifier + ")" ),
+ "TAG": new RegExp( "^(" + identifier + "|[*])" ),
+ "ATTR": new RegExp( "^" + attributes ),
+ "PSEUDO": new RegExp( "^" + pseudos ),
+ "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace +
+ "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace +
+ "*(\\d+)|))" + whitespace + "*\\)|)", "i" ),
+ "bool": new RegExp( "^(?:" + booleans + ")$", "i" ),
+ // For use in libraries implementing .is()
+ // We use this for POS matching in `select`
+ "needsContext": new RegExp( "^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" +
+ whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" )
+ },
+
+ rinputs = /^(?:input|select|textarea|button)$/i,
+ rheader = /^h\d$/i,
+
+ rnative = /^[^{]+\{\s*\[native \w/,
+
+ // Easily-parseable/retrievable ID or TAG or CLASS selectors
+ rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
+
+ rsibling = /[+~]/,
+
+ // CSS escapes
+ // http://www.w3.org/TR/CSS21/syndata.html#escaped-characters
+ runescape = new RegExp( "\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig" ),
+ funescape = function( _, escaped, escapedWhitespace ) {
+ var high = "0x" + escaped - 0x10000;
+ // NaN means non-codepoint
+ // Support: Firefox<24
+ // Workaround erroneous numeric interpretation of +"0x"
+ return high !== high || escapedWhitespace ?
+ escaped :
+ high < 0 ?
+ // BMP codepoint
+ String.fromCharCode( high + 0x10000 ) :
+ // Supplemental Plane codepoint (surrogate pair)
+ String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 );
+ },
+
+ // CSS string/identifier serialization
+ // https://drafts.csswg.org/cssom/#common-serializing-idioms
+ rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,
+ fcssescape = function( ch, asCodePoint ) {
+ if ( asCodePoint ) {
+
+ // U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER
+ if ( ch === "\0" ) {
+ return "\uFFFD";
+ }
+
+ // Control characters and (dependent upon position) numbers get escaped as code points
+ return ch.slice( 0, -1 ) + "\\" + ch.charCodeAt( ch.length - 1 ).toString( 16 ) + " ";
+ }
+
+ // Other potentially-special ASCII characters get backslash-escaped
+ return "\\" + ch;
+ },
+
+ // Used for iframes
+ // See setDocument()
+ // Removing the function wrapper causes a "Permission Denied"
+ // error in IE
+ unloadHandler = function() {
+ setDocument();
+ },
+
+ disabledAncestor = addCombinator(
+ function( elem ) {
+ return elem.disabled === true && ("form" in elem || "label" in elem);
+ },
+ { dir: "parentNode", next: "legend" }
+ );
+
+// Optimize for push.apply( _, NodeList )
+try {
+ push.apply(
+ (arr = slice.call( preferredDoc.childNodes )),
+ preferredDoc.childNodes
+ );
+ // Support: Android<4.0
+ // Detect silently failing push.apply
+ arr[ preferredDoc.childNodes.length ].nodeType;
+} catch ( e ) {
+ push = { apply: arr.length ?
+
+ // Leverage slice if possible
+ function( target, els ) {
+ push_native.apply( target, slice.call(els) );
+ } :
+
+ // Support: IE<9
+ // Otherwise append directly
+ function( target, els ) {
+ var j = target.length,
+ i = 0;
+ // Can't trust NodeList.length
+ while ( (target[j++] = els[i++]) ) {}
+ target.length = j - 1;
+ }
+ };
+}
+
+function Sizzle( selector, context, results, seed ) {
+ var m, i, elem, nid, match, groups, newSelector,
+ newContext = context && context.ownerDocument,
+
+ // nodeType defaults to 9, since context defaults to document
+ nodeType = context ? context.nodeType : 9;
+
+ results = results || [];
+
+ // Return early from calls with invalid selector or context
+ if ( typeof selector !== "string" || !selector ||
+ nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) {
+
+ return results;
+ }
+
+ // Try to shortcut find operations (as opposed to filters) in HTML documents
+ if ( !seed ) {
+
+ if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) {
+ setDocument( context );
+ }
+ context = context || document;
+
+ if ( documentIsHTML ) {
+
+ // If the selector is sufficiently simple, try using a "get*By*" DOM method
+ // (excepting DocumentFragment context, where the methods don't exist)
+ if ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) {
+
+ // ID selector
+ if ( (m = match[1]) ) {
+
+ // Document context
+ if ( nodeType === 9 ) {
+ if ( (elem = context.getElementById( m )) ) {
+
+ // Support: IE, Opera, Webkit
+ // TODO: identify versions
+ // getElementById can match elements by name instead of ID
+ if ( elem.id === m ) {
+ results.push( elem );
+ return results;
+ }
+ } else {
+ return results;
+ }
+
+ // Element context
+ } else {
+
+ // Support: IE, Opera, Webkit
+ // TODO: identify versions
+ // getElementById can match elements by name instead of ID
+ if ( newContext && (elem = newContext.getElementById( m )) &&
+ contains( context, elem ) &&
+ elem.id === m ) {
+
+ results.push( elem );
+ return results;
+ }
+ }
+
+ // Type selector
+ } else if ( match[2] ) {
+ push.apply( results, context.getElementsByTagName( selector ) );
+ return results;
+
+ // Class selector
+ } else if ( (m = match[3]) && support.getElementsByClassName &&
+ context.getElementsByClassName ) {
+
+ push.apply( results, context.getElementsByClassName( m ) );
+ return results;
+ }
+ }
+
+ // Take advantage of querySelectorAll
+ if ( support.qsa &&
+ !compilerCache[ selector + " " ] &&
+ (!rbuggyQSA || !rbuggyQSA.test( selector )) ) {
+
+ if ( nodeType !== 1 ) {
+ newContext = context;
+ newSelector = selector;
+
+ // qSA looks outside Element context, which is not what we want
+ // Thanks to Andrew Dupont for this workaround technique
+ // Support: IE <=8
+ // Exclude object elements
+ } else if ( context.nodeName.toLowerCase() !== "object" ) {
+
+ // Capture the context ID, setting it first if necessary
+ if ( (nid = context.getAttribute( "id" )) ) {
+ nid = nid.replace( rcssescape, fcssescape );
+ } else {
+ context.setAttribute( "id", (nid = expando) );
+ }
+
+ // Prefix every selector in the list
+ groups = tokenize( selector );
+ i = groups.length;
+ while ( i-- ) {
+ groups[i] = "#" + nid + " " + toSelector( groups[i] );
+ }
+ newSelector = groups.join( "," );
+
+ // Expand context for sibling selectors
+ newContext = rsibling.test( selector ) && testContext( context.parentNode ) ||
+ context;
+ }
+
+ if ( newSelector ) {
+ try {
+ push.apply( results,
+ newContext.querySelectorAll( newSelector )
+ );
+ return results;
+ } catch ( qsaError ) {
+ } finally {
+ if ( nid === expando ) {
+ context.removeAttribute( "id" );
+ }
+ }
+ }
+ }
+ }
+ }
+
+ // All others
+ return select( selector.replace( rtrim, "$1" ), context, results, seed );
+}
+
+/**
+ * Create key-value caches of limited size
+ * @returns {function(string, object)} Returns the Object data after storing it on itself with
+ * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength)
+ * deleting the oldest entry
+ */
+function createCache() {
+ var keys = [];
+
+ function cache( key, value ) {
+ // Use (key + " ") to avoid collision with native prototype properties (see Issue #157)
+ if ( keys.push( key + " " ) > Expr.cacheLength ) {
+ // Only keep the most recent entries
+ delete cache[ keys.shift() ];
+ }
+ return (cache[ key + " " ] = value);
+ }
+ return cache;
+}
+
+/**
+ * Mark a function for special use by Sizzle
+ * @param {Function} fn The function to mark
+ */
+function markFunction( fn ) {
+ fn[ expando ] = true;
+ return fn;
+}
+
+/**
+ * Support testing using an element
+ * @param {Function} fn Passed the created element and returns a boolean result
+ */
+function assert( fn ) {
+ var el = document.createElement("fieldset");
+
+ try {
+ return !!fn( el );
+ } catch (e) {
+ return false;
+ } finally {
+ // Remove from its parent by default
+ if ( el.parentNode ) {
+ el.parentNode.removeChild( el );
+ }
+ // release memory in IE
+ el = null;
+ }
+}
+
+/**
+ * Adds the same handler for all of the specified attrs
+ * @param {String} attrs Pipe-separated list of attributes
+ * @param {Function} handler The method that will be applied
+ */
+function addHandle( attrs, handler ) {
+ var arr = attrs.split("|"),
+ i = arr.length;
+
+ while ( i-- ) {
+ Expr.attrHandle[ arr[i] ] = handler;
+ }
+}
+
+/**
+ * Checks document order of two siblings
+ * @param {Element} a
+ * @param {Element} b
+ * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b
+ */
+function siblingCheck( a, b ) {
+ var cur = b && a,
+ diff = cur && a.nodeType === 1 && b.nodeType === 1 &&
+ a.sourceIndex - b.sourceIndex;
+
+ // Use IE sourceIndex if available on both nodes
+ if ( diff ) {
+ return diff;
+ }
+
+ // Check if b follows a
+ if ( cur ) {
+ while ( (cur = cur.nextSibling) ) {
+ if ( cur === b ) {
+ return -1;
+ }
+ }
+ }
+
+ return a ? 1 : -1;
+}
+
+/**
+ * Returns a function to use in pseudos for input types
+ * @param {String} type
+ */
+function createInputPseudo( type ) {
+ return function( elem ) {
+ var name = elem.nodeName.toLowerCase();
+ return name === "input" && elem.type === type;
+ };
+}
+
+/**
+ * Returns a function to use in pseudos for buttons
+ * @param {String} type
+ */
+function createButtonPseudo( type ) {
+ return function( elem ) {
+ var name = elem.nodeName.toLowerCase();
+ return (name === "input" || name === "button") && elem.type === type;
+ };
+}
+
+/**
+ * Returns a function to use in pseudos for :enabled/:disabled
+ * @param {Boolean} disabled true for :disabled; false for :enabled
+ */
+function createDisabledPseudo( disabled ) {
+
+ // Known :disabled false positives: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable
+ return function( elem ) {
+
+ // Only certain elements can match :enabled or :disabled
+ // https://html.spec.whatwg.org/multipage/scripting.html#selector-enabled
+ // https://html.spec.whatwg.org/multipage/scripting.html#selector-disabled
+ if ( "form" in elem ) {
+
+ // Check for inherited disabledness on relevant non-disabled elements:
+ // * listed form-associated elements in a disabled fieldset
+ // https://html.spec.whatwg.org/multipage/forms.html#category-listed
+ // https://html.spec.whatwg.org/multipage/forms.html#concept-fe-disabled
+ // * option elements in a disabled optgroup
+ // https://html.spec.whatwg.org/multipage/forms.html#concept-option-disabled
+ // All such elements have a "form" property.
+ if ( elem.parentNode && elem.disabled === false ) {
+
+ // Option elements defer to a parent optgroup if present
+ if ( "label" in elem ) {
+ if ( "label" in elem.parentNode ) {
+ return elem.parentNode.disabled === disabled;
+ } else {
+ return elem.disabled === disabled;
+ }
+ }
+
+ // Support: IE 6 - 11
+ // Use the isDisabled shortcut property to check for disabled fieldset ancestors
+ return elem.isDisabled === disabled ||
+
+ // Where there is no isDisabled, check manually
+ /* jshint -W018 */
+ elem.isDisabled !== !disabled &&
+ disabledAncestor( elem ) === disabled;
+ }
+
+ return elem.disabled === disabled;
+
+ // Try to winnow out elements that can't be disabled before trusting the disabled property.
+ // Some victims get caught in our net (label, legend, menu, track), but it shouldn't
+ // even exist on them, let alone have a boolean value.
+ } else if ( "label" in elem ) {
+ return elem.disabled === disabled;
+ }
+
+ // Remaining elements are neither :enabled nor :disabled
+ return false;
+ };
+}
+
+/**
+ * Returns a function to use in pseudos for positionals
+ * @param {Function} fn
+ */
+function createPositionalPseudo( fn ) {
+ return markFunction(function( argument ) {
+ argument = +argument;
+ return markFunction(function( seed, matches ) {
+ var j,
+ matchIndexes = fn( [], seed.length, argument ),
+ i = matchIndexes.length;
+
+ // Match elements found at the specified indexes
+ while ( i-- ) {
+ if ( seed[ (j = matchIndexes[i]) ] ) {
+ seed[j] = !(matches[j] = seed[j]);
+ }
+ }
+ });
+ });
+}
+
+/**
+ * Checks a node for validity as a Sizzle context
+ * @param {Element|Object=} context
+ * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value
+ */
+function testContext( context ) {
+ return context && typeof context.getElementsByTagName !== "undefined" && context;
+}
+
+// Expose support vars for convenience
+support = Sizzle.support = {};
+
+/**
+ * Detects XML nodes
+ * @param {Element|Object} elem An element or a document
+ * @returns {Boolean} True iff elem is a non-HTML XML node
+ */
+isXML = Sizzle.isXML = function( elem ) {
+ // documentElement is verified for cases where it doesn't yet exist
+ // (such as loading iframes in IE - #4833)
+ var documentElement = elem && (elem.ownerDocument || elem).documentElement;
+ return documentElement ? documentElement.nodeName !== "HTML" : false;
+};
+
+/**
+ * Sets document-related variables once based on the current document
+ * @param {Element|Object} [doc] An element or document object to use to set the document
+ * @returns {Object} Returns the current document
+ */
+setDocument = Sizzle.setDocument = function( node ) {
+ var hasCompare, subWindow,
+ doc = node ? node.ownerDocument || node : preferredDoc;
+
+ // Return early if doc is invalid or already selected
+ if ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) {
+ return document;
+ }
+
+ // Update global variables
+ document = doc;
+ docElem = document.documentElement;
+ documentIsHTML = !isXML( document );
+
+ // Support: IE 9-11, Edge
+ // Accessing iframe documents after unload throws "permission denied" errors (jQuery #13936)
+ if ( preferredDoc !== document &&
+ (subWindow = document.defaultView) && subWindow.top !== subWindow ) {
+
+ // Support: IE 11, Edge
+ if ( subWindow.addEventListener ) {
+ subWindow.addEventListener( "unload", unloadHandler, false );
+
+ // Support: IE 9 - 10 only
+ } else if ( subWindow.attachEvent ) {
+ subWindow.attachEvent( "onunload", unloadHandler );
+ }
+ }
+
+ /* Attributes
+ ---------------------------------------------------------------------- */
+
+ // Support: IE<8
+ // Verify that getAttribute really returns attributes and not properties
+ // (excepting IE8 booleans)
+ support.attributes = assert(function( el ) {
+ el.className = "i";
+ return !el.getAttribute("className");
+ });
+
+ /* getElement(s)By*
+ ---------------------------------------------------------------------- */
+
+ // Check if getElementsByTagName("*") returns only elements
+ support.getElementsByTagName = assert(function( el ) {
+ el.appendChild( document.createComment("") );
+ return !el.getElementsByTagName("*").length;
+ });
+
+ // Support: IE<9
+ support.getElementsByClassName = rnative.test( document.getElementsByClassName );
+
+ // Support: IE<10
+ // Check if getElementById returns elements by name
+ // The broken getElementById methods don't pick up programmatically-set names,
+ // so use a roundabout getElementsByName test
+ support.getById = assert(function( el ) {
+ docElem.appendChild( el ).id = expando;
+ return !document.getElementsByName || !document.getElementsByName( expando ).length;
+ });
+
+ // ID filter and find
+ if ( support.getById ) {
+ Expr.filter["ID"] = function( id ) {
+ var attrId = id.replace( runescape, funescape );
+ return function( elem ) {
+ return elem.getAttribute("id") === attrId;
+ };
+ };
+ Expr.find["ID"] = function( id, context ) {
+ if ( typeof context.getElementById !== "undefined" && documentIsHTML ) {
+ var elem = context.getElementById( id );
+ return elem ? [ elem ] : [];
+ }
+ };
+ } else {
+ Expr.filter["ID"] = function( id ) {
+ var attrId = id.replace( runescape, funescape );
+ return function( elem ) {
+ var node = typeof elem.getAttributeNode !== "undefined" &&
+ elem.getAttributeNode("id");
+ return node && node.value === attrId;
+ };
+ };
+
+ // Support: IE 6 - 7 only
+ // getElementById is not reliable as a find shortcut
+ Expr.find["ID"] = function( id, context ) {
+ if ( typeof context.getElementById !== "undefined" && documentIsHTML ) {
+ var node, i, elems,
+ elem = context.getElementById( id );
+
+ if ( elem ) {
+
+ // Verify the id attribute
+ node = elem.getAttributeNode("id");
+ if ( node && node.value === id ) {
+ return [ elem ];
+ }
+
+ // Fall back on getElementsByName
+ elems = context.getElementsByName( id );
+ i = 0;
+ while ( (elem = elems[i++]) ) {
+ node = elem.getAttributeNode("id");
+ if ( node && node.value === id ) {
+ return [ elem ];
+ }
+ }
+ }
+
+ return [];
+ }
+ };
+ }
+
+ // Tag
+ Expr.find["TAG"] = support.getElementsByTagName ?
+ function( tag, context ) {
+ if ( typeof context.getElementsByTagName !== "undefined" ) {
+ return context.getElementsByTagName( tag );
+
+ // DocumentFragment nodes don't have gEBTN
+ } else if ( support.qsa ) {
+ return context.querySelectorAll( tag );
+ }
+ } :
+
+ function( tag, context ) {
+ var elem,
+ tmp = [],
+ i = 0,
+ // By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too
+ results = context.getElementsByTagName( tag );
+
+ // Filter out possible comments
+ if ( tag === "*" ) {
+ while ( (elem = results[i++]) ) {
+ if ( elem.nodeType === 1 ) {
+ tmp.push( elem );
+ }
+ }
+
+ return tmp;
+ }
+ return results;
+ };
+
+ // Class
+ Expr.find["CLASS"] = support.getElementsByClassName && function( className, context ) {
+ if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) {
+ return context.getElementsByClassName( className );
+ }
+ };
+
+ /* QSA/matchesSelector
+ ---------------------------------------------------------------------- */
+
+ // QSA and matchesSelector support
+
+ // matchesSelector(:active) reports false when true (IE9/Opera 11.5)
+ rbuggyMatches = [];
+
+ // qSa(:focus) reports false when true (Chrome 21)
+ // We allow this because of a bug in IE8/9 that throws an error
+ // whenever `document.activeElement` is accessed on an iframe
+ // So, we allow :focus to pass through QSA all the time to avoid the IE error
+ // See https://bugs.jquery.com/ticket/13378
+ rbuggyQSA = [];
+
+ if ( (support.qsa = rnative.test( document.querySelectorAll )) ) {
+ // Build QSA regex
+ // Regex strategy adopted from Diego Perini
+ assert(function( el ) {
+ // Select is set to empty string on purpose
+ // This is to test IE's treatment of not explicitly
+ // setting a boolean content attribute,
+ // since its presence should be enough
+ // https://bugs.jquery.com/ticket/12359
+ docElem.appendChild( el ).innerHTML = "
" +
+ "
" +
+ " ";
+
+ // Support: IE8, Opera 11-12.16
+ // Nothing should be selected when empty strings follow ^= or $= or *=
+ // The test attribute must be unknown in Opera but "safe" for WinRT
+ // https://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section
+ if ( el.querySelectorAll("[msallowcapture^='']").length ) {
+ rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" );
+ }
+
+ // Support: IE8
+ // Boolean attributes and "value" are not treated correctly
+ if ( !el.querySelectorAll("[selected]").length ) {
+ rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" );
+ }
+
+ // Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+
+ if ( !el.querySelectorAll( "[id~=" + expando + "-]" ).length ) {
+ rbuggyQSA.push("~=");
+ }
+
+ // Webkit/Opera - :checked should return selected option elements
+ // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
+ // IE8 throws error here and will not see later tests
+ if ( !el.querySelectorAll(":checked").length ) {
+ rbuggyQSA.push(":checked");
+ }
+
+ // Support: Safari 8+, iOS 8+
+ // https://bugs.webkit.org/show_bug.cgi?id=136851
+ // In-page `selector#id sibling-combinator selector` fails
+ if ( !el.querySelectorAll( "a#" + expando + "+*" ).length ) {
+ rbuggyQSA.push(".#.+[+~]");
+ }
+ });
+
+ assert(function( el ) {
+ el.innerHTML = "
" +
+ "
";
+
+ // Support: Windows 8 Native Apps
+ // The type and name attributes are restricted during .innerHTML assignment
+ var input = document.createElement("input");
+ input.setAttribute( "type", "hidden" );
+ el.appendChild( input ).setAttribute( "name", "D" );
+
+ // Support: IE8
+ // Enforce case-sensitivity of name attribute
+ if ( el.querySelectorAll("[name=d]").length ) {
+ rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" );
+ }
+
+ // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled)
+ // IE8 throws error here and will not see later tests
+ if ( el.querySelectorAll(":enabled").length !== 2 ) {
+ rbuggyQSA.push( ":enabled", ":disabled" );
+ }
+
+ // Support: IE9-11+
+ // IE's :disabled selector does not pick up the children of disabled fieldsets
+ docElem.appendChild( el ).disabled = true;
+ if ( el.querySelectorAll(":disabled").length !== 2 ) {
+ rbuggyQSA.push( ":enabled", ":disabled" );
+ }
+
+ // Opera 10-11 does not throw on post-comma invalid pseudos
+ el.querySelectorAll("*,:x");
+ rbuggyQSA.push(",.*:");
+ });
+ }
+
+ if ( (support.matchesSelector = rnative.test( (matches = docElem.matches ||
+ docElem.webkitMatchesSelector ||
+ docElem.mozMatchesSelector ||
+ docElem.oMatchesSelector ||
+ docElem.msMatchesSelector) )) ) {
+
+ assert(function( el ) {
+ // Check to see if it's possible to do matchesSelector
+ // on a disconnected node (IE 9)
+ support.disconnectedMatch = matches.call( el, "*" );
+
+ // This should fail with an exception
+ // Gecko does not error, returns false instead
+ matches.call( el, "[s!='']:x" );
+ rbuggyMatches.push( "!=", pseudos );
+ });
+ }
+
+ rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join("|") );
+ rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join("|") );
+
+ /* Contains
+ ---------------------------------------------------------------------- */
+ hasCompare = rnative.test( docElem.compareDocumentPosition );
+
+ // Element contains another
+ // Purposefully self-exclusive
+ // As in, an element does not contain itself
+ contains = hasCompare || rnative.test( docElem.contains ) ?
+ function( a, b ) {
+ var adown = a.nodeType === 9 ? a.documentElement : a,
+ bup = b && b.parentNode;
+ return a === bup || !!( bup && bup.nodeType === 1 && (
+ adown.contains ?
+ adown.contains( bup ) :
+ a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16
+ ));
+ } :
+ function( a, b ) {
+ if ( b ) {
+ while ( (b = b.parentNode) ) {
+ if ( b === a ) {
+ return true;
+ }
+ }
+ }
+ return false;
+ };
+
+ /* Sorting
+ ---------------------------------------------------------------------- */
+
+ // Document order sorting
+ sortOrder = hasCompare ?
+ function( a, b ) {
+
+ // Flag for duplicate removal
+ if ( a === b ) {
+ hasDuplicate = true;
+ return 0;
+ }
+
+ // Sort on method existence if only one input has compareDocumentPosition
+ var compare = !a.compareDocumentPosition - !b.compareDocumentPosition;
+ if ( compare ) {
+ return compare;
+ }
+
+ // Calculate position if both inputs belong to the same document
+ compare = ( a.ownerDocument || a ) === ( b.ownerDocument || b ) ?
+ a.compareDocumentPosition( b ) :
+
+ // Otherwise we know they are disconnected
+ 1;
+
+ // Disconnected nodes
+ if ( compare & 1 ||
+ (!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) {
+
+ // Choose the first element that is related to our preferred document
+ if ( a === document || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) {
+ return -1;
+ }
+ if ( b === document || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) {
+ return 1;
+ }
+
+ // Maintain original order
+ return sortInput ?
+ ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :
+ 0;
+ }
+
+ return compare & 4 ? -1 : 1;
+ } :
+ function( a, b ) {
+ // Exit early if the nodes are identical
+ if ( a === b ) {
+ hasDuplicate = true;
+ return 0;
+ }
+
+ var cur,
+ i = 0,
+ aup = a.parentNode,
+ bup = b.parentNode,
+ ap = [ a ],
+ bp = [ b ];
+
+ // Parentless nodes are either documents or disconnected
+ if ( !aup || !bup ) {
+ return a === document ? -1 :
+ b === document ? 1 :
+ aup ? -1 :
+ bup ? 1 :
+ sortInput ?
+ ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :
+ 0;
+
+ // If the nodes are siblings, we can do a quick check
+ } else if ( aup === bup ) {
+ return siblingCheck( a, b );
+ }
+
+ // Otherwise we need full lists of their ancestors for comparison
+ cur = a;
+ while ( (cur = cur.parentNode) ) {
+ ap.unshift( cur );
+ }
+ cur = b;
+ while ( (cur = cur.parentNode) ) {
+ bp.unshift( cur );
+ }
+
+ // Walk down the tree looking for a discrepancy
+ while ( ap[i] === bp[i] ) {
+ i++;
+ }
+
+ return i ?
+ // Do a sibling check if the nodes have a common ancestor
+ siblingCheck( ap[i], bp[i] ) :
+
+ // Otherwise nodes in our document sort first
+ ap[i] === preferredDoc ? -1 :
+ bp[i] === preferredDoc ? 1 :
+ 0;
+ };
+
+ return document;
+};
+
+Sizzle.matches = function( expr, elements ) {
+ return Sizzle( expr, null, null, elements );
+};
+
+Sizzle.matchesSelector = function( elem, expr ) {
+ // Set document vars if needed
+ if ( ( elem.ownerDocument || elem ) !== document ) {
+ setDocument( elem );
+ }
+
+ // Make sure that attribute selectors are quoted
+ expr = expr.replace( rattributeQuotes, "='$1']" );
+
+ if ( support.matchesSelector && documentIsHTML &&
+ !compilerCache[ expr + " " ] &&
+ ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) &&
+ ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) {
+
+ try {
+ var ret = matches.call( elem, expr );
+
+ // IE 9's matchesSelector returns false on disconnected nodes
+ if ( ret || support.disconnectedMatch ||
+ // As well, disconnected nodes are said to be in a document
+ // fragment in IE 9
+ elem.document && elem.document.nodeType !== 11 ) {
+ return ret;
+ }
+ } catch (e) {}
+ }
+
+ return Sizzle( expr, document, null, [ elem ] ).length > 0;
+};
+
+Sizzle.contains = function( context, elem ) {
+ // Set document vars if needed
+ if ( ( context.ownerDocument || context ) !== document ) {
+ setDocument( context );
+ }
+ return contains( context, elem );
+};
+
+Sizzle.attr = function( elem, name ) {
+ // Set document vars if needed
+ if ( ( elem.ownerDocument || elem ) !== document ) {
+ setDocument( elem );
+ }
+
+ var fn = Expr.attrHandle[ name.toLowerCase() ],
+ // Don't get fooled by Object.prototype properties (jQuery #13807)
+ val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ?
+ fn( elem, name, !documentIsHTML ) :
+ undefined;
+
+ return val !== undefined ?
+ val :
+ support.attributes || !documentIsHTML ?
+ elem.getAttribute( name ) :
+ (val = elem.getAttributeNode(name)) && val.specified ?
+ val.value :
+ null;
+};
+
+Sizzle.escape = function( sel ) {
+ return (sel + "").replace( rcssescape, fcssescape );
+};
+
+Sizzle.error = function( msg ) {
+ throw new Error( "Syntax error, unrecognized expression: " + msg );
+};
+
+/**
+ * Document sorting and removing duplicates
+ * @param {ArrayLike} results
+ */
+Sizzle.uniqueSort = function( results ) {
+ var elem,
+ duplicates = [],
+ j = 0,
+ i = 0;
+
+ // Unless we *know* we can detect duplicates, assume their presence
+ hasDuplicate = !support.detectDuplicates;
+ sortInput = !support.sortStable && results.slice( 0 );
+ results.sort( sortOrder );
+
+ if ( hasDuplicate ) {
+ while ( (elem = results[i++]) ) {
+ if ( elem === results[ i ] ) {
+ j = duplicates.push( i );
+ }
+ }
+ while ( j-- ) {
+ results.splice( duplicates[ j ], 1 );
+ }
+ }
+
+ // Clear input after sorting to release objects
+ // See https://github.com/jquery/sizzle/pull/225
+ sortInput = null;
+
+ return results;
+};
+
+/**
+ * Utility function for retrieving the text value of an array of DOM nodes
+ * @param {Array|Element} elem
+ */
+getText = Sizzle.getText = function( elem ) {
+ var node,
+ ret = "",
+ i = 0,
+ nodeType = elem.nodeType;
+
+ if ( !nodeType ) {
+ // If no nodeType, this is expected to be an array
+ while ( (node = elem[i++]) ) {
+ // Do not traverse comment nodes
+ ret += getText( node );
+ }
+ } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) {
+ // Use textContent for elements
+ // innerText usage removed for consistency of new lines (jQuery #11153)
+ if ( typeof elem.textContent === "string" ) {
+ return elem.textContent;
+ } else {
+ // Traverse its children
+ for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {
+ ret += getText( elem );
+ }
+ }
+ } else if ( nodeType === 3 || nodeType === 4 ) {
+ return elem.nodeValue;
+ }
+ // Do not include comment or processing instruction nodes
+
+ return ret;
+};
+
+Expr = Sizzle.selectors = {
+
+ // Can be adjusted by the user
+ cacheLength: 50,
+
+ createPseudo: markFunction,
+
+ match: matchExpr,
+
+ attrHandle: {},
+
+ find: {},
+
+ relative: {
+ ">": { dir: "parentNode", first: true },
+ " ": { dir: "parentNode" },
+ "+": { dir: "previousSibling", first: true },
+ "~": { dir: "previousSibling" }
+ },
+
+ preFilter: {
+ "ATTR": function( match ) {
+ match[1] = match[1].replace( runescape, funescape );
+
+ // Move the given value to match[3] whether quoted or unquoted
+ match[3] = ( match[3] || match[4] || match[5] || "" ).replace( runescape, funescape );
+
+ if ( match[2] === "~=" ) {
+ match[3] = " " + match[3] + " ";
+ }
+
+ return match.slice( 0, 4 );
+ },
+
+ "CHILD": function( match ) {
+ /* matches from matchExpr["CHILD"]
+ 1 type (only|nth|...)
+ 2 what (child|of-type)
+ 3 argument (even|odd|\d*|\d*n([+-]\d+)?|...)
+ 4 xn-component of xn+y argument ([+-]?\d*n|)
+ 5 sign of xn-component
+ 6 x of xn-component
+ 7 sign of y-component
+ 8 y of y-component
+ */
+ match[1] = match[1].toLowerCase();
+
+ if ( match[1].slice( 0, 3 ) === "nth" ) {
+ // nth-* requires argument
+ if ( !match[3] ) {
+ Sizzle.error( match[0] );
+ }
+
+ // numeric x and y parameters for Expr.filter.CHILD
+ // remember that false/true cast respectively to 0/1
+ match[4] = +( match[4] ? match[5] + (match[6] || 1) : 2 * ( match[3] === "even" || match[3] === "odd" ) );
+ match[5] = +( ( match[7] + match[8] ) || match[3] === "odd" );
+
+ // other types prohibit arguments
+ } else if ( match[3] ) {
+ Sizzle.error( match[0] );
+ }
+
+ return match;
+ },
+
+ "PSEUDO": function( match ) {
+ var excess,
+ unquoted = !match[6] && match[2];
+
+ if ( matchExpr["CHILD"].test( match[0] ) ) {
+ return null;
+ }
+
+ // Accept quoted arguments as-is
+ if ( match[3] ) {
+ match[2] = match[4] || match[5] || "";
+
+ // Strip excess characters from unquoted arguments
+ } else if ( unquoted && rpseudo.test( unquoted ) &&
+ // Get excess from tokenize (recursively)
+ (excess = tokenize( unquoted, true )) &&
+ // advance to the next closing parenthesis
+ (excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) {
+
+ // excess is a negative index
+ match[0] = match[0].slice( 0, excess );
+ match[2] = unquoted.slice( 0, excess );
+ }
+
+ // Return only captures needed by the pseudo filter method (type and argument)
+ return match.slice( 0, 3 );
+ }
+ },
+
+ filter: {
+
+ "TAG": function( nodeNameSelector ) {
+ var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase();
+ return nodeNameSelector === "*" ?
+ function() { return true; } :
+ function( elem ) {
+ return elem.nodeName && elem.nodeName.toLowerCase() === nodeName;
+ };
+ },
+
+ "CLASS": function( className ) {
+ var pattern = classCache[ className + " " ];
+
+ return pattern ||
+ (pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) &&
+ classCache( className, function( elem ) {
+ return pattern.test( typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== "undefined" && elem.getAttribute("class") || "" );
+ });
+ },
+
+ "ATTR": function( name, operator, check ) {
+ return function( elem ) {
+ var result = Sizzle.attr( elem, name );
+
+ if ( result == null ) {
+ return operator === "!=";
+ }
+ if ( !operator ) {
+ return true;
+ }
+
+ result += "";
+
+ return operator === "=" ? result === check :
+ operator === "!=" ? result !== check :
+ operator === "^=" ? check && result.indexOf( check ) === 0 :
+ operator === "*=" ? check && result.indexOf( check ) > -1 :
+ operator === "$=" ? check && result.slice( -check.length ) === check :
+ operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 :
+ operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" :
+ false;
+ };
+ },
+
+ "CHILD": function( type, what, argument, first, last ) {
+ var simple = type.slice( 0, 3 ) !== "nth",
+ forward = type.slice( -4 ) !== "last",
+ ofType = what === "of-type";
+
+ return first === 1 && last === 0 ?
+
+ // Shortcut for :nth-*(n)
+ function( elem ) {
+ return !!elem.parentNode;
+ } :
+
+ function( elem, context, xml ) {
+ var cache, uniqueCache, outerCache, node, nodeIndex, start,
+ dir = simple !== forward ? "nextSibling" : "previousSibling",
+ parent = elem.parentNode,
+ name = ofType && elem.nodeName.toLowerCase(),
+ useCache = !xml && !ofType,
+ diff = false;
+
+ if ( parent ) {
+
+ // :(first|last|only)-(child|of-type)
+ if ( simple ) {
+ while ( dir ) {
+ node = elem;
+ while ( (node = node[ dir ]) ) {
+ if ( ofType ?
+ node.nodeName.toLowerCase() === name :
+ node.nodeType === 1 ) {
+
+ return false;
+ }
+ }
+ // Reverse direction for :only-* (if we haven't yet done so)
+ start = dir = type === "only" && !start && "nextSibling";
+ }
+ return true;
+ }
+
+ start = [ forward ? parent.firstChild : parent.lastChild ];
+
+ // non-xml :nth-child(...) stores cache data on `parent`
+ if ( forward && useCache ) {
+
+ // Seek `elem` from a previously-cached index
+
+ // ...in a gzip-friendly way
+ node = parent;
+ outerCache = node[ expando ] || (node[ expando ] = {});
+
+ // Support: IE <9 only
+ // Defend against cloned attroperties (jQuery gh-1709)
+ uniqueCache = outerCache[ node.uniqueID ] ||
+ (outerCache[ node.uniqueID ] = {});
+
+ cache = uniqueCache[ type ] || [];
+ nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];
+ diff = nodeIndex && cache[ 2 ];
+ node = nodeIndex && parent.childNodes[ nodeIndex ];
+
+ while ( (node = ++nodeIndex && node && node[ dir ] ||
+
+ // Fallback to seeking `elem` from the start
+ (diff = nodeIndex = 0) || start.pop()) ) {
+
+ // When found, cache indexes on `parent` and break
+ if ( node.nodeType === 1 && ++diff && node === elem ) {
+ uniqueCache[ type ] = [ dirruns, nodeIndex, diff ];
+ break;
+ }
+ }
+
+ } else {
+ // Use previously-cached element index if available
+ if ( useCache ) {
+ // ...in a gzip-friendly way
+ node = elem;
+ outerCache = node[ expando ] || (node[ expando ] = {});
+
+ // Support: IE <9 only
+ // Defend against cloned attroperties (jQuery gh-1709)
+ uniqueCache = outerCache[ node.uniqueID ] ||
+ (outerCache[ node.uniqueID ] = {});
+
+ cache = uniqueCache[ type ] || [];
+ nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];
+ diff = nodeIndex;
+ }
+
+ // xml :nth-child(...)
+ // or :nth-last-child(...) or :nth(-last)?-of-type(...)
+ if ( diff === false ) {
+ // Use the same loop as above to seek `elem` from the start
+ while ( (node = ++nodeIndex && node && node[ dir ] ||
+ (diff = nodeIndex = 0) || start.pop()) ) {
+
+ if ( ( ofType ?
+ node.nodeName.toLowerCase() === name :
+ node.nodeType === 1 ) &&
+ ++diff ) {
+
+ // Cache the index of each encountered element
+ if ( useCache ) {
+ outerCache = node[ expando ] || (node[ expando ] = {});
+
+ // Support: IE <9 only
+ // Defend against cloned attroperties (jQuery gh-1709)
+ uniqueCache = outerCache[ node.uniqueID ] ||
+ (outerCache[ node.uniqueID ] = {});
+
+ uniqueCache[ type ] = [ dirruns, diff ];
+ }
+
+ if ( node === elem ) {
+ break;
+ }
+ }
+ }
+ }
+ }
+
+ // Incorporate the offset, then check against cycle size
+ diff -= last;
+ return diff === first || ( diff % first === 0 && diff / first >= 0 );
+ }
+ };
+ },
+
+ "PSEUDO": function( pseudo, argument ) {
+ // pseudo-class names are case-insensitive
+ // http://www.w3.org/TR/selectors/#pseudo-classes
+ // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters
+ // Remember that setFilters inherits from pseudos
+ var args,
+ fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] ||
+ Sizzle.error( "unsupported pseudo: " + pseudo );
+
+ // The user may use createPseudo to indicate that
+ // arguments are needed to create the filter function
+ // just as Sizzle does
+ if ( fn[ expando ] ) {
+ return fn( argument );
+ }
+
+ // But maintain support for old signatures
+ if ( fn.length > 1 ) {
+ args = [ pseudo, pseudo, "", argument ];
+ return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ?
+ markFunction(function( seed, matches ) {
+ var idx,
+ matched = fn( seed, argument ),
+ i = matched.length;
+ while ( i-- ) {
+ idx = indexOf( seed, matched[i] );
+ seed[ idx ] = !( matches[ idx ] = matched[i] );
+ }
+ }) :
+ function( elem ) {
+ return fn( elem, 0, args );
+ };
+ }
+
+ return fn;
+ }
+ },
+
+ pseudos: {
+ // Potentially complex pseudos
+ "not": markFunction(function( selector ) {
+ // Trim the selector passed to compile
+ // to avoid treating leading and trailing
+ // spaces as combinators
+ var input = [],
+ results = [],
+ matcher = compile( selector.replace( rtrim, "$1" ) );
+
+ return matcher[ expando ] ?
+ markFunction(function( seed, matches, context, xml ) {
+ var elem,
+ unmatched = matcher( seed, null, xml, [] ),
+ i = seed.length;
+
+ // Match elements unmatched by `matcher`
+ while ( i-- ) {
+ if ( (elem = unmatched[i]) ) {
+ seed[i] = !(matches[i] = elem);
+ }
+ }
+ }) :
+ function( elem, context, xml ) {
+ input[0] = elem;
+ matcher( input, null, xml, results );
+ // Don't keep the element (issue #299)
+ input[0] = null;
+ return !results.pop();
+ };
+ }),
+
+ "has": markFunction(function( selector ) {
+ return function( elem ) {
+ return Sizzle( selector, elem ).length > 0;
+ };
+ }),
+
+ "contains": markFunction(function( text ) {
+ text = text.replace( runescape, funescape );
+ return function( elem ) {
+ return ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1;
+ };
+ }),
+
+ // "Whether an element is represented by a :lang() selector
+ // is based solely on the element's language value
+ // being equal to the identifier C,
+ // or beginning with the identifier C immediately followed by "-".
+ // The matching of C against the element's language value is performed case-insensitively.
+ // The identifier C does not have to be a valid language name."
+ // http://www.w3.org/TR/selectors/#lang-pseudo
+ "lang": markFunction( function( lang ) {
+ // lang value must be a valid identifier
+ if ( !ridentifier.test(lang || "") ) {
+ Sizzle.error( "unsupported lang: " + lang );
+ }
+ lang = lang.replace( runescape, funescape ).toLowerCase();
+ return function( elem ) {
+ var elemLang;
+ do {
+ if ( (elemLang = documentIsHTML ?
+ elem.lang :
+ elem.getAttribute("xml:lang") || elem.getAttribute("lang")) ) {
+
+ elemLang = elemLang.toLowerCase();
+ return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0;
+ }
+ } while ( (elem = elem.parentNode) && elem.nodeType === 1 );
+ return false;
+ };
+ }),
+
+ // Miscellaneous
+ "target": function( elem ) {
+ var hash = window.location && window.location.hash;
+ return hash && hash.slice( 1 ) === elem.id;
+ },
+
+ "root": function( elem ) {
+ return elem === docElem;
+ },
+
+ "focus": function( elem ) {
+ return elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex);
+ },
+
+ // Boolean properties
+ "enabled": createDisabledPseudo( false ),
+ "disabled": createDisabledPseudo( true ),
+
+ "checked": function( elem ) {
+ // In CSS3, :checked should return both checked and selected elements
+ // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
+ var nodeName = elem.nodeName.toLowerCase();
+ return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected);
+ },
+
+ "selected": function( elem ) {
+ // Accessing this property makes selected-by-default
+ // options in Safari work properly
+ if ( elem.parentNode ) {
+ elem.parentNode.selectedIndex;
+ }
+
+ return elem.selected === true;
+ },
+
+ // Contents
+ "empty": function( elem ) {
+ // http://www.w3.org/TR/selectors/#empty-pseudo
+ // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5),
+ // but not by others (comment: 8; processing instruction: 7; etc.)
+ // nodeType < 6 works because attributes (2) do not appear as children
+ for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {
+ if ( elem.nodeType < 6 ) {
+ return false;
+ }
+ }
+ return true;
+ },
+
+ "parent": function( elem ) {
+ return !Expr.pseudos["empty"]( elem );
+ },
+
+ // Element/input types
+ "header": function( elem ) {
+ return rheader.test( elem.nodeName );
+ },
+
+ "input": function( elem ) {
+ return rinputs.test( elem.nodeName );
+ },
+
+ "button": function( elem ) {
+ var name = elem.nodeName.toLowerCase();
+ return name === "input" && elem.type === "button" || name === "button";
+ },
+
+ "text": function( elem ) {
+ var attr;
+ return elem.nodeName.toLowerCase() === "input" &&
+ elem.type === "text" &&
+
+ // Support: IE<8
+ // New HTML5 attribute values (e.g., "search") appear with elem.type === "text"
+ ( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === "text" );
+ },
+
+ // Position-in-collection
+ "first": createPositionalPseudo(function() {
+ return [ 0 ];
+ }),
+
+ "last": createPositionalPseudo(function( matchIndexes, length ) {
+ return [ length - 1 ];
+ }),
+
+ "eq": createPositionalPseudo(function( matchIndexes, length, argument ) {
+ return [ argument < 0 ? argument + length : argument ];
+ }),
+
+ "even": createPositionalPseudo(function( matchIndexes, length ) {
+ var i = 0;
+ for ( ; i < length; i += 2 ) {
+ matchIndexes.push( i );
+ }
+ return matchIndexes;
+ }),
+
+ "odd": createPositionalPseudo(function( matchIndexes, length ) {
+ var i = 1;
+ for ( ; i < length; i += 2 ) {
+ matchIndexes.push( i );
+ }
+ return matchIndexes;
+ }),
+
+ "lt": createPositionalPseudo(function( matchIndexes, length, argument ) {
+ var i = argument < 0 ? argument + length : argument;
+ for ( ; --i >= 0; ) {
+ matchIndexes.push( i );
+ }
+ return matchIndexes;
+ }),
+
+ "gt": createPositionalPseudo(function( matchIndexes, length, argument ) {
+ var i = argument < 0 ? argument + length : argument;
+ for ( ; ++i < length; ) {
+ matchIndexes.push( i );
+ }
+ return matchIndexes;
+ })
+ }
+};
+
+Expr.pseudos["nth"] = Expr.pseudos["eq"];
+
+// Add button/input type pseudos
+for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) {
+ Expr.pseudos[ i ] = createInputPseudo( i );
+}
+for ( i in { submit: true, reset: true } ) {
+ Expr.pseudos[ i ] = createButtonPseudo( i );
+}
+
+// Easy API for creating new setFilters
+function setFilters() {}
+setFilters.prototype = Expr.filters = Expr.pseudos;
+Expr.setFilters = new setFilters();
+
+tokenize = Sizzle.tokenize = function( selector, parseOnly ) {
+ var matched, match, tokens, type,
+ soFar, groups, preFilters,
+ cached = tokenCache[ selector + " " ];
+
+ if ( cached ) {
+ return parseOnly ? 0 : cached.slice( 0 );
+ }
+
+ soFar = selector;
+ groups = [];
+ preFilters = Expr.preFilter;
+
+ while ( soFar ) {
+
+ // Comma and first run
+ if ( !matched || (match = rcomma.exec( soFar )) ) {
+ if ( match ) {
+ // Don't consume trailing commas as valid
+ soFar = soFar.slice( match[0].length ) || soFar;
+ }
+ groups.push( (tokens = []) );
+ }
+
+ matched = false;
+
+ // Combinators
+ if ( (match = rcombinators.exec( soFar )) ) {
+ matched = match.shift();
+ tokens.push({
+ value: matched,
+ // Cast descendant combinators to space
+ type: match[0].replace( rtrim, " " )
+ });
+ soFar = soFar.slice( matched.length );
+ }
+
+ // Filters
+ for ( type in Expr.filter ) {
+ if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] ||
+ (match = preFilters[ type ]( match ))) ) {
+ matched = match.shift();
+ tokens.push({
+ value: matched,
+ type: type,
+ matches: match
+ });
+ soFar = soFar.slice( matched.length );
+ }
+ }
+
+ if ( !matched ) {
+ break;
+ }
+ }
+
+ // Return the length of the invalid excess
+ // if we're just parsing
+ // Otherwise, throw an error or return tokens
+ return parseOnly ?
+ soFar.length :
+ soFar ?
+ Sizzle.error( selector ) :
+ // Cache the tokens
+ tokenCache( selector, groups ).slice( 0 );
+};
+
+function toSelector( tokens ) {
+ var i = 0,
+ len = tokens.length,
+ selector = "";
+ for ( ; i < len; i++ ) {
+ selector += tokens[i].value;
+ }
+ return selector;
+}
+
+function addCombinator( matcher, combinator, base ) {
+ var dir = combinator.dir,
+ skip = combinator.next,
+ key = skip || dir,
+ checkNonElements = base && key === "parentNode",
+ doneName = done++;
+
+ return combinator.first ?
+ // Check against closest ancestor/preceding element
+ function( elem, context, xml ) {
+ while ( (elem = elem[ dir ]) ) {
+ if ( elem.nodeType === 1 || checkNonElements ) {
+ return matcher( elem, context, xml );
+ }
+ }
+ return false;
+ } :
+
+ // Check against all ancestor/preceding elements
+ function( elem, context, xml ) {
+ var oldCache, uniqueCache, outerCache,
+ newCache = [ dirruns, doneName ];
+
+ // We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching
+ if ( xml ) {
+ while ( (elem = elem[ dir ]) ) {
+ if ( elem.nodeType === 1 || checkNonElements ) {
+ if ( matcher( elem, context, xml ) ) {
+ return true;
+ }
+ }
+ }
+ } else {
+ while ( (elem = elem[ dir ]) ) {
+ if ( elem.nodeType === 1 || checkNonElements ) {
+ outerCache = elem[ expando ] || (elem[ expando ] = {});
+
+ // Support: IE <9 only
+ // Defend against cloned attroperties (jQuery gh-1709)
+ uniqueCache = outerCache[ elem.uniqueID ] || (outerCache[ elem.uniqueID ] = {});
+
+ if ( skip && skip === elem.nodeName.toLowerCase() ) {
+ elem = elem[ dir ] || elem;
+ } else if ( (oldCache = uniqueCache[ key ]) &&
+ oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) {
+
+ // Assign to newCache so results back-propagate to previous elements
+ return (newCache[ 2 ] = oldCache[ 2 ]);
+ } else {
+ // Reuse newcache so results back-propagate to previous elements
+ uniqueCache[ key ] = newCache;
+
+ // A match means we're done; a fail means we have to keep checking
+ if ( (newCache[ 2 ] = matcher( elem, context, xml )) ) {
+ return true;
+ }
+ }
+ }
+ }
+ }
+ return false;
+ };
+}
+
+function elementMatcher( matchers ) {
+ return matchers.length > 1 ?
+ function( elem, context, xml ) {
+ var i = matchers.length;
+ while ( i-- ) {
+ if ( !matchers[i]( elem, context, xml ) ) {
+ return false;
+ }
+ }
+ return true;
+ } :
+ matchers[0];
+}
+
+function multipleContexts( selector, contexts, results ) {
+ var i = 0,
+ len = contexts.length;
+ for ( ; i < len; i++ ) {
+ Sizzle( selector, contexts[i], results );
+ }
+ return results;
+}
+
+function condense( unmatched, map, filter, context, xml ) {
+ var elem,
+ newUnmatched = [],
+ i = 0,
+ len = unmatched.length,
+ mapped = map != null;
+
+ for ( ; i < len; i++ ) {
+ if ( (elem = unmatched[i]) ) {
+ if ( !filter || filter( elem, context, xml ) ) {
+ newUnmatched.push( elem );
+ if ( mapped ) {
+ map.push( i );
+ }
+ }
+ }
+ }
+
+ return newUnmatched;
+}
+
+function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) {
+ if ( postFilter && !postFilter[ expando ] ) {
+ postFilter = setMatcher( postFilter );
+ }
+ if ( postFinder && !postFinder[ expando ] ) {
+ postFinder = setMatcher( postFinder, postSelector );
+ }
+ return markFunction(function( seed, results, context, xml ) {
+ var temp, i, elem,
+ preMap = [],
+ postMap = [],
+ preexisting = results.length,
+
+ // Get initial elements from seed or context
+ elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ),
+
+ // Prefilter to get matcher input, preserving a map for seed-results synchronization
+ matcherIn = preFilter && ( seed || !selector ) ?
+ condense( elems, preMap, preFilter, context, xml ) :
+ elems,
+
+ matcherOut = matcher ?
+ // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results,
+ postFinder || ( seed ? preFilter : preexisting || postFilter ) ?
+
+ // ...intermediate processing is necessary
+ [] :
+
+ // ...otherwise use results directly
+ results :
+ matcherIn;
+
+ // Find primary matches
+ if ( matcher ) {
+ matcher( matcherIn, matcherOut, context, xml );
+ }
+
+ // Apply postFilter
+ if ( postFilter ) {
+ temp = condense( matcherOut, postMap );
+ postFilter( temp, [], context, xml );
+
+ // Un-match failing elements by moving them back to matcherIn
+ i = temp.length;
+ while ( i-- ) {
+ if ( (elem = temp[i]) ) {
+ matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem);
+ }
+ }
+ }
+
+ if ( seed ) {
+ if ( postFinder || preFilter ) {
+ if ( postFinder ) {
+ // Get the final matcherOut by condensing this intermediate into postFinder contexts
+ temp = [];
+ i = matcherOut.length;
+ while ( i-- ) {
+ if ( (elem = matcherOut[i]) ) {
+ // Restore matcherIn since elem is not yet a final match
+ temp.push( (matcherIn[i] = elem) );
+ }
+ }
+ postFinder( null, (matcherOut = []), temp, xml );
+ }
+
+ // Move matched elements from seed to results to keep them synchronized
+ i = matcherOut.length;
+ while ( i-- ) {
+ if ( (elem = matcherOut[i]) &&
+ (temp = postFinder ? indexOf( seed, elem ) : preMap[i]) > -1 ) {
+
+ seed[temp] = !(results[temp] = elem);
+ }
+ }
+ }
+
+ // Add elements to results, through postFinder if defined
+ } else {
+ matcherOut = condense(
+ matcherOut === results ?
+ matcherOut.splice( preexisting, matcherOut.length ) :
+ matcherOut
+ );
+ if ( postFinder ) {
+ postFinder( null, results, matcherOut, xml );
+ } else {
+ push.apply( results, matcherOut );
+ }
+ }
+ });
+}
+
+function matcherFromTokens( tokens ) {
+ var checkContext, matcher, j,
+ len = tokens.length,
+ leadingRelative = Expr.relative[ tokens[0].type ],
+ implicitRelative = leadingRelative || Expr.relative[" "],
+ i = leadingRelative ? 1 : 0,
+
+ // The foundational matcher ensures that elements are reachable from top-level context(s)
+ matchContext = addCombinator( function( elem ) {
+ return elem === checkContext;
+ }, implicitRelative, true ),
+ matchAnyContext = addCombinator( function( elem ) {
+ return indexOf( checkContext, elem ) > -1;
+ }, implicitRelative, true ),
+ matchers = [ function( elem, context, xml ) {
+ var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || (
+ (checkContext = context).nodeType ?
+ matchContext( elem, context, xml ) :
+ matchAnyContext( elem, context, xml ) );
+ // Avoid hanging onto element (issue #299)
+ checkContext = null;
+ return ret;
+ } ];
+
+ for ( ; i < len; i++ ) {
+ if ( (matcher = Expr.relative[ tokens[i].type ]) ) {
+ matchers = [ addCombinator(elementMatcher( matchers ), matcher) ];
+ } else {
+ matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches );
+
+ // Return special upon seeing a positional matcher
+ if ( matcher[ expando ] ) {
+ // Find the next relative operator (if any) for proper handling
+ j = ++i;
+ for ( ; j < len; j++ ) {
+ if ( Expr.relative[ tokens[j].type ] ) {
+ break;
+ }
+ }
+ return setMatcher(
+ i > 1 && elementMatcher( matchers ),
+ i > 1 && toSelector(
+ // If the preceding token was a descendant combinator, insert an implicit any-element `*`
+ tokens.slice( 0, i - 1 ).concat({ value: tokens[ i - 2 ].type === " " ? "*" : "" })
+ ).replace( rtrim, "$1" ),
+ matcher,
+ i < j && matcherFromTokens( tokens.slice( i, j ) ),
+ j < len && matcherFromTokens( (tokens = tokens.slice( j )) ),
+ j < len && toSelector( tokens )
+ );
+ }
+ matchers.push( matcher );
+ }
+ }
+
+ return elementMatcher( matchers );
+}
+
+function matcherFromGroupMatchers( elementMatchers, setMatchers ) {
+ var bySet = setMatchers.length > 0,
+ byElement = elementMatchers.length > 0,
+ superMatcher = function( seed, context, xml, results, outermost ) {
+ var elem, j, matcher,
+ matchedCount = 0,
+ i = "0",
+ unmatched = seed && [],
+ setMatched = [],
+ contextBackup = outermostContext,
+ // We must always have either seed elements or outermost context
+ elems = seed || byElement && Expr.find["TAG"]( "*", outermost ),
+ // Use integer dirruns iff this is the outermost matcher
+ dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.random() || 0.1),
+ len = elems.length;
+
+ if ( outermost ) {
+ outermostContext = context === document || context || outermost;
+ }
+
+ // Add elements passing elementMatchers directly to results
+ // Support: IE<9, Safari
+ // Tolerate NodeList properties (IE: "length"; Safari:
) matching elements by id
+ for ( ; i !== len && (elem = elems[i]) != null; i++ ) {
+ if ( byElement && elem ) {
+ j = 0;
+ if ( !context && elem.ownerDocument !== document ) {
+ setDocument( elem );
+ xml = !documentIsHTML;
+ }
+ while ( (matcher = elementMatchers[j++]) ) {
+ if ( matcher( elem, context || document, xml) ) {
+ results.push( elem );
+ break;
+ }
+ }
+ if ( outermost ) {
+ dirruns = dirrunsUnique;
+ }
+ }
+
+ // Track unmatched elements for set filters
+ if ( bySet ) {
+ // They will have gone through all possible matchers
+ if ( (elem = !matcher && elem) ) {
+ matchedCount--;
+ }
+
+ // Lengthen the array for every element, matched or not
+ if ( seed ) {
+ unmatched.push( elem );
+ }
+ }
+ }
+
+ // `i` is now the count of elements visited above, and adding it to `matchedCount`
+ // makes the latter nonnegative.
+ matchedCount += i;
+
+ // Apply set filters to unmatched elements
+ // NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount`
+ // equals `i`), unless we didn't visit _any_ elements in the above loop because we have
+ // no element matchers and no seed.
+ // Incrementing an initially-string "0" `i` allows `i` to remain a string only in that
+ // case, which will result in a "00" `matchedCount` that differs from `i` but is also
+ // numerically zero.
+ if ( bySet && i !== matchedCount ) {
+ j = 0;
+ while ( (matcher = setMatchers[j++]) ) {
+ matcher( unmatched, setMatched, context, xml );
+ }
+
+ if ( seed ) {
+ // Reintegrate element matches to eliminate the need for sorting
+ if ( matchedCount > 0 ) {
+ while ( i-- ) {
+ if ( !(unmatched[i] || setMatched[i]) ) {
+ setMatched[i] = pop.call( results );
+ }
+ }
+ }
+
+ // Discard index placeholder values to get only actual matches
+ setMatched = condense( setMatched );
+ }
+
+ // Add matches to results
+ push.apply( results, setMatched );
+
+ // Seedless set matches succeeding multiple successful matchers stipulate sorting
+ if ( outermost && !seed && setMatched.length > 0 &&
+ ( matchedCount + setMatchers.length ) > 1 ) {
+
+ Sizzle.uniqueSort( results );
+ }
+ }
+
+ // Override manipulation of globals by nested matchers
+ if ( outermost ) {
+ dirruns = dirrunsUnique;
+ outermostContext = contextBackup;
+ }
+
+ return unmatched;
+ };
+
+ return bySet ?
+ markFunction( superMatcher ) :
+ superMatcher;
+}
+
+compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) {
+ var i,
+ setMatchers = [],
+ elementMatchers = [],
+ cached = compilerCache[ selector + " " ];
+
+ if ( !cached ) {
+ // Generate a function of recursive functions that can be used to check each element
+ if ( !match ) {
+ match = tokenize( selector );
+ }
+ i = match.length;
+ while ( i-- ) {
+ cached = matcherFromTokens( match[i] );
+ if ( cached[ expando ] ) {
+ setMatchers.push( cached );
+ } else {
+ elementMatchers.push( cached );
+ }
+ }
+
+ // Cache the compiled function
+ cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) );
+
+ // Save selector and tokenization
+ cached.selector = selector;
+ }
+ return cached;
+};
+
+/**
+ * A low-level selection function that works with Sizzle's compiled
+ * selector functions
+ * @param {String|Function} selector A selector or a pre-compiled
+ * selector function built with Sizzle.compile
+ * @param {Element} context
+ * @param {Array} [results]
+ * @param {Array} [seed] A set of elements to match against
+ */
+select = Sizzle.select = function( selector, context, results, seed ) {
+ var i, tokens, token, type, find,
+ compiled = typeof selector === "function" && selector,
+ match = !seed && tokenize( (selector = compiled.selector || selector) );
+
+ results = results || [];
+
+ // Try to minimize operations if there is only one selector in the list and no seed
+ // (the latter of which guarantees us context)
+ if ( match.length === 1 ) {
+
+ // Reduce context if the leading compound selector is an ID
+ tokens = match[0] = match[0].slice( 0 );
+ if ( tokens.length > 2 && (token = tokens[0]).type === "ID" &&
+ context.nodeType === 9 && documentIsHTML && Expr.relative[ tokens[1].type ] ) {
+
+ context = ( Expr.find["ID"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0];
+ if ( !context ) {
+ return results;
+
+ // Precompiled matchers will still verify ancestry, so step up a level
+ } else if ( compiled ) {
+ context = context.parentNode;
+ }
+
+ selector = selector.slice( tokens.shift().value.length );
+ }
+
+ // Fetch a seed set for right-to-left matching
+ i = matchExpr["needsContext"].test( selector ) ? 0 : tokens.length;
+ while ( i-- ) {
+ token = tokens[i];
+
+ // Abort if we hit a combinator
+ if ( Expr.relative[ (type = token.type) ] ) {
+ break;
+ }
+ if ( (find = Expr.find[ type ]) ) {
+ // Search, expanding context for leading sibling combinators
+ if ( (seed = find(
+ token.matches[0].replace( runescape, funescape ),
+ rsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context
+ )) ) {
+
+ // If seed is empty or no tokens remain, we can return early
+ tokens.splice( i, 1 );
+ selector = seed.length && toSelector( tokens );
+ if ( !selector ) {
+ push.apply( results, seed );
+ return results;
+ }
+
+ break;
+ }
+ }
+ }
+ }
+
+ // Compile and execute a filtering function if one is not provided
+ // Provide `match` to avoid retokenization if we modified the selector above
+ ( compiled || compile( selector, match ) )(
+ seed,
+ context,
+ !documentIsHTML,
+ results,
+ !context || rsibling.test( selector ) && testContext( context.parentNode ) || context
+ );
+ return results;
+};
+
+// One-time assignments
+
+// Sort stability
+support.sortStable = expando.split("").sort( sortOrder ).join("") === expando;
+
+// Support: Chrome 14-35+
+// Always assume duplicates if they aren't passed to the comparison function
+support.detectDuplicates = !!hasDuplicate;
+
+// Initialize against the default document
+setDocument();
+
+// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27)
+// Detached nodes confoundingly follow *each other*
+support.sortDetached = assert(function( el ) {
+ // Should return 1, but returns 4 (following)
+ return el.compareDocumentPosition( document.createElement("fieldset") ) & 1;
+});
+
+// Support: IE<8
+// Prevent attribute/property "interpolation"
+// https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx
+if ( !assert(function( el ) {
+ el.innerHTML = " ";
+ return el.firstChild.getAttribute("href") === "#" ;
+}) ) {
+ addHandle( "type|href|height|width", function( elem, name, isXML ) {
+ if ( !isXML ) {
+ return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 );
+ }
+ });
+}
+
+// Support: IE<9
+// Use defaultValue in place of getAttribute("value")
+if ( !support.attributes || !assert(function( el ) {
+ el.innerHTML = " ";
+ el.firstChild.setAttribute( "value", "" );
+ return el.firstChild.getAttribute( "value" ) === "";
+}) ) {
+ addHandle( "value", function( elem, name, isXML ) {
+ if ( !isXML && elem.nodeName.toLowerCase() === "input" ) {
+ return elem.defaultValue;
+ }
+ });
+}
+
+// Support: IE<9
+// Use getAttributeNode to fetch booleans when getAttribute lies
+if ( !assert(function( el ) {
+ return el.getAttribute("disabled") == null;
+}) ) {
+ addHandle( booleans, function( elem, name, isXML ) {
+ var val;
+ if ( !isXML ) {
+ return elem[ name ] === true ? name.toLowerCase() :
+ (val = elem.getAttributeNode( name )) && val.specified ?
+ val.value :
+ null;
+ }
+ });
+}
+
+return Sizzle;
+
+})( window );
+
+
+
+jQuery.find = Sizzle;
+jQuery.expr = Sizzle.selectors;
+
+// Deprecated
+jQuery.expr[ ":" ] = jQuery.expr.pseudos;
+jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort;
+jQuery.text = Sizzle.getText;
+jQuery.isXMLDoc = Sizzle.isXML;
+jQuery.contains = Sizzle.contains;
+jQuery.escapeSelector = Sizzle.escape;
+
+
+
+
+var dir = function( elem, dir, until ) {
+ var matched = [],
+ truncate = until !== undefined;
+
+ while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) {
+ if ( elem.nodeType === 1 ) {
+ if ( truncate && jQuery( elem ).is( until ) ) {
+ break;
+ }
+ matched.push( elem );
+ }
+ }
+ return matched;
+};
+
+
+var siblings = function( n, elem ) {
+ var matched = [];
+
+ for ( ; n; n = n.nextSibling ) {
+ if ( n.nodeType === 1 && n !== elem ) {
+ matched.push( n );
+ }
+ }
+
+ return matched;
+};
+
+
+var rneedsContext = jQuery.expr.match.needsContext;
+
+
+
+function nodeName( elem, name ) {
+
+ return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();
+
+};
+var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i );
+
+
+
+var risSimple = /^.[^:#\[\.,]*$/;
+
+// Implement the identical functionality for filter and not
+function winnow( elements, qualifier, not ) {
+ if ( jQuery.isFunction( qualifier ) ) {
+ return jQuery.grep( elements, function( elem, i ) {
+ return !!qualifier.call( elem, i, elem ) !== not;
+ } );
+ }
+
+ // Single element
+ if ( qualifier.nodeType ) {
+ return jQuery.grep( elements, function( elem ) {
+ return ( elem === qualifier ) !== not;
+ } );
+ }
+
+ // Arraylike of elements (jQuery, arguments, Array)
+ if ( typeof qualifier !== "string" ) {
+ return jQuery.grep( elements, function( elem ) {
+ return ( indexOf.call( qualifier, elem ) > -1 ) !== not;
+ } );
+ }
+
+ // Simple selector that can be filtered directly, removing non-Elements
+ if ( risSimple.test( qualifier ) ) {
+ return jQuery.filter( qualifier, elements, not );
+ }
+
+ // Complex selector, compare the two sets, removing non-Elements
+ qualifier = jQuery.filter( qualifier, elements );
+ return jQuery.grep( elements, function( elem ) {
+ return ( indexOf.call( qualifier, elem ) > -1 ) !== not && elem.nodeType === 1;
+ } );
+}
+
+jQuery.filter = function( expr, elems, not ) {
+ var elem = elems[ 0 ];
+
+ if ( not ) {
+ expr = ":not(" + expr + ")";
+ }
+
+ if ( elems.length === 1 && elem.nodeType === 1 ) {
+ return jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [];
+ }
+
+ return jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) {
+ return elem.nodeType === 1;
+ } ) );
+};
+
+jQuery.fn.extend( {
+ find: function( selector ) {
+ var i, ret,
+ len = this.length,
+ self = this;
+
+ if ( typeof selector !== "string" ) {
+ return this.pushStack( jQuery( selector ).filter( function() {
+ for ( i = 0; i < len; i++ ) {
+ if ( jQuery.contains( self[ i ], this ) ) {
+ return true;
+ }
+ }
+ } ) );
+ }
+
+ ret = this.pushStack( [] );
+
+ for ( i = 0; i < len; i++ ) {
+ jQuery.find( selector, self[ i ], ret );
+ }
+
+ return len > 1 ? jQuery.uniqueSort( ret ) : ret;
+ },
+ filter: function( selector ) {
+ return this.pushStack( winnow( this, selector || [], false ) );
+ },
+ not: function( selector ) {
+ return this.pushStack( winnow( this, selector || [], true ) );
+ },
+ is: function( selector ) {
+ return !!winnow(
+ this,
+
+ // If this is a positional/relative selector, check membership in the returned set
+ // so $("p:first").is("p:last") won't return true for a doc with two "p".
+ typeof selector === "string" && rneedsContext.test( selector ) ?
+ jQuery( selector ) :
+ selector || [],
+ false
+ ).length;
+ }
+} );
+
+
+// Initialize a jQuery object
+
+
+// A central reference to the root jQuery(document)
+var rootjQuery,
+
+ // A simple way to check for HTML strings
+ // Prioritize #id over to avoid XSS via location.hash (#9521)
+ // Strict HTML recognition (#11290: must start with <)
+ // Shortcut simple #id case for speed
+ rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,
+
+ init = jQuery.fn.init = function( selector, context, root ) {
+ var match, elem;
+
+ // HANDLE: $(""), $(null), $(undefined), $(false)
+ if ( !selector ) {
+ return this;
+ }
+
+ // Method init() accepts an alternate rootjQuery
+ // so migrate can support jQuery.sub (gh-2101)
+ root = root || rootjQuery;
+
+ // Handle HTML strings
+ if ( typeof selector === "string" ) {
+ if ( selector[ 0 ] === "<" &&
+ selector[ selector.length - 1 ] === ">" &&
+ selector.length >= 3 ) {
+
+ // Assume that strings that start and end with <> are HTML and skip the regex check
+ match = [ null, selector, null ];
+
+ } else {
+ match = rquickExpr.exec( selector );
+ }
+
+ // Match html or make sure no context is specified for #id
+ if ( match && ( match[ 1 ] || !context ) ) {
+
+ // HANDLE: $(html) -> $(array)
+ if ( match[ 1 ] ) {
+ context = context instanceof jQuery ? context[ 0 ] : context;
+
+ // Option to run scripts is true for back-compat
+ // Intentionally let the error be thrown if parseHTML is not present
+ jQuery.merge( this, jQuery.parseHTML(
+ match[ 1 ],
+ context && context.nodeType ? context.ownerDocument || context : document,
+ true
+ ) );
+
+ // HANDLE: $(html, props)
+ if ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) {
+ for ( match in context ) {
+
+ // Properties of context are called as methods if possible
+ if ( jQuery.isFunction( this[ match ] ) ) {
+ this[ match ]( context[ match ] );
+
+ // ...and otherwise set as attributes
+ } else {
+ this.attr( match, context[ match ] );
+ }
+ }
+ }
+
+ return this;
+
+ // HANDLE: $(#id)
+ } else {
+ elem = document.getElementById( match[ 2 ] );
+
+ if ( elem ) {
+
+ // Inject the element directly into the jQuery object
+ this[ 0 ] = elem;
+ this.length = 1;
+ }
+ return this;
+ }
+
+ // HANDLE: $(expr, $(...))
+ } else if ( !context || context.jquery ) {
+ return ( context || root ).find( selector );
+
+ // HANDLE: $(expr, context)
+ // (which is just equivalent to: $(context).find(expr)
+ } else {
+ return this.constructor( context ).find( selector );
+ }
+
+ // HANDLE: $(DOMElement)
+ } else if ( selector.nodeType ) {
+ this[ 0 ] = selector;
+ this.length = 1;
+ return this;
+
+ // HANDLE: $(function)
+ // Shortcut for document ready
+ } else if ( jQuery.isFunction( selector ) ) {
+ return root.ready !== undefined ?
+ root.ready( selector ) :
+
+ // Execute immediately if ready is not present
+ selector( jQuery );
+ }
+
+ return jQuery.makeArray( selector, this );
+ };
+
+// Give the init function the jQuery prototype for later instantiation
+init.prototype = jQuery.fn;
+
+// Initialize central reference
+rootjQuery = jQuery( document );
+
+
+var rparentsprev = /^(?:parents|prev(?:Until|All))/,
+
+ // Methods guaranteed to produce a unique set when starting from a unique set
+ guaranteedUnique = {
+ children: true,
+ contents: true,
+ next: true,
+ prev: true
+ };
+
+jQuery.fn.extend( {
+ has: function( target ) {
+ var targets = jQuery( target, this ),
+ l = targets.length;
+
+ return this.filter( function() {
+ var i = 0;
+ for ( ; i < l; i++ ) {
+ if ( jQuery.contains( this, targets[ i ] ) ) {
+ return true;
+ }
+ }
+ } );
+ },
+
+ closest: function( selectors, context ) {
+ var cur,
+ i = 0,
+ l = this.length,
+ matched = [],
+ targets = typeof selectors !== "string" && jQuery( selectors );
+
+ // Positional selectors never match, since there's no _selection_ context
+ if ( !rneedsContext.test( selectors ) ) {
+ for ( ; i < l; i++ ) {
+ for ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) {
+
+ // Always skip document fragments
+ if ( cur.nodeType < 11 && ( targets ?
+ targets.index( cur ) > -1 :
+
+ // Don't pass non-elements to Sizzle
+ cur.nodeType === 1 &&
+ jQuery.find.matchesSelector( cur, selectors ) ) ) {
+
+ matched.push( cur );
+ break;
+ }
+ }
+ }
+ }
+
+ return this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched );
+ },
+
+ // Determine the position of an element within the set
+ index: function( elem ) {
+
+ // No argument, return index in parent
+ if ( !elem ) {
+ return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1;
+ }
+
+ // Index in selector
+ if ( typeof elem === "string" ) {
+ return indexOf.call( jQuery( elem ), this[ 0 ] );
+ }
+
+ // Locate the position of the desired element
+ return indexOf.call( this,
+
+ // If it receives a jQuery object, the first element is used
+ elem.jquery ? elem[ 0 ] : elem
+ );
+ },
+
+ add: function( selector, context ) {
+ return this.pushStack(
+ jQuery.uniqueSort(
+ jQuery.merge( this.get(), jQuery( selector, context ) )
+ )
+ );
+ },
+
+ addBack: function( selector ) {
+ return this.add( selector == null ?
+ this.prevObject : this.prevObject.filter( selector )
+ );
+ }
+} );
+
+function sibling( cur, dir ) {
+ while ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {}
+ return cur;
+}
+
+jQuery.each( {
+ parent: function( elem ) {
+ var parent = elem.parentNode;
+ return parent && parent.nodeType !== 11 ? parent : null;
+ },
+ parents: function( elem ) {
+ return dir( elem, "parentNode" );
+ },
+ parentsUntil: function( elem, i, until ) {
+ return dir( elem, "parentNode", until );
+ },
+ next: function( elem ) {
+ return sibling( elem, "nextSibling" );
+ },
+ prev: function( elem ) {
+ return sibling( elem, "previousSibling" );
+ },
+ nextAll: function( elem ) {
+ return dir( elem, "nextSibling" );
+ },
+ prevAll: function( elem ) {
+ return dir( elem, "previousSibling" );
+ },
+ nextUntil: function( elem, i, until ) {
+ return dir( elem, "nextSibling", until );
+ },
+ prevUntil: function( elem, i, until ) {
+ return dir( elem, "previousSibling", until );
+ },
+ siblings: function( elem ) {
+ return siblings( ( elem.parentNode || {} ).firstChild, elem );
+ },
+ children: function( elem ) {
+ return siblings( elem.firstChild );
+ },
+ contents: function( elem ) {
+ if ( nodeName( elem, "iframe" ) ) {
+ return elem.contentDocument;
+ }
+
+ // Support: IE 9 - 11 only, iOS 7 only, Android Browser <=4.3 only
+ // Treat the template element as a regular one in browsers that
+ // don't support it.
+ if ( nodeName( elem, "template" ) ) {
+ elem = elem.content || elem;
+ }
+
+ return jQuery.merge( [], elem.childNodes );
+ }
+}, function( name, fn ) {
+ jQuery.fn[ name ] = function( until, selector ) {
+ var matched = jQuery.map( this, fn, until );
+
+ if ( name.slice( -5 ) !== "Until" ) {
+ selector = until;
+ }
+
+ if ( selector && typeof selector === "string" ) {
+ matched = jQuery.filter( selector, matched );
+ }
+
+ if ( this.length > 1 ) {
+
+ // Remove duplicates
+ if ( !guaranteedUnique[ name ] ) {
+ jQuery.uniqueSort( matched );
+ }
+
+ // Reverse order for parents* and prev-derivatives
+ if ( rparentsprev.test( name ) ) {
+ matched.reverse();
+ }
+ }
+
+ return this.pushStack( matched );
+ };
+} );
+var rnothtmlwhite = ( /[^\x20\t\r\n\f]+/g );
+
+
+
+// Convert String-formatted options into Object-formatted ones
+function createOptions( options ) {
+ var object = {};
+ jQuery.each( options.match( rnothtmlwhite ) || [], function( _, flag ) {
+ object[ flag ] = true;
+ } );
+ return object;
+}
+
+/*
+ * Create a callback list using the following parameters:
+ *
+ * options: an optional list of space-separated options that will change how
+ * the callback list behaves or a more traditional option object
+ *
+ * By default a callback list will act like an event callback list and can be
+ * "fired" multiple times.
+ *
+ * Possible options:
+ *
+ * once: will ensure the callback list can only be fired once (like a Deferred)
+ *
+ * memory: will keep track of previous values and will call any callback added
+ * after the list has been fired right away with the latest "memorized"
+ * values (like a Deferred)
+ *
+ * unique: will ensure a callback can only be added once (no duplicate in the list)
+ *
+ * stopOnFalse: interrupt callings when a callback returns false
+ *
+ */
+jQuery.Callbacks = function( options ) {
+
+ // Convert options from String-formatted to Object-formatted if needed
+ // (we check in cache first)
+ options = typeof options === "string" ?
+ createOptions( options ) :
+ jQuery.extend( {}, options );
+
+ var // Flag to know if list is currently firing
+ firing,
+
+ // Last fire value for non-forgettable lists
+ memory,
+
+ // Flag to know if list was already fired
+ fired,
+
+ // Flag to prevent firing
+ locked,
+
+ // Actual callback list
+ list = [],
+
+ // Queue of execution data for repeatable lists
+ queue = [],
+
+ // Index of currently firing callback (modified by add/remove as needed)
+ firingIndex = -1,
+
+ // Fire callbacks
+ fire = function() {
+
+ // Enforce single-firing
+ locked = locked || options.once;
+
+ // Execute callbacks for all pending executions,
+ // respecting firingIndex overrides and runtime changes
+ fired = firing = true;
+ for ( ; queue.length; firingIndex = -1 ) {
+ memory = queue.shift();
+ while ( ++firingIndex < list.length ) {
+
+ // Run callback and check for early termination
+ if ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false &&
+ options.stopOnFalse ) {
+
+ // Jump to end and forget the data so .add doesn't re-fire
+ firingIndex = list.length;
+ memory = false;
+ }
+ }
+ }
+
+ // Forget the data if we're done with it
+ if ( !options.memory ) {
+ memory = false;
+ }
+
+ firing = false;
+
+ // Clean up if we're done firing for good
+ if ( locked ) {
+
+ // Keep an empty list if we have data for future add calls
+ if ( memory ) {
+ list = [];
+
+ // Otherwise, this object is spent
+ } else {
+ list = "";
+ }
+ }
+ },
+
+ // Actual Callbacks object
+ self = {
+
+ // Add a callback or a collection of callbacks to the list
+ add: function() {
+ if ( list ) {
+
+ // If we have memory from a past run, we should fire after adding
+ if ( memory && !firing ) {
+ firingIndex = list.length - 1;
+ queue.push( memory );
+ }
+
+ ( function add( args ) {
+ jQuery.each( args, function( _, arg ) {
+ if ( jQuery.isFunction( arg ) ) {
+ if ( !options.unique || !self.has( arg ) ) {
+ list.push( arg );
+ }
+ } else if ( arg && arg.length && jQuery.type( arg ) !== "string" ) {
+
+ // Inspect recursively
+ add( arg );
+ }
+ } );
+ } )( arguments );
+
+ if ( memory && !firing ) {
+ fire();
+ }
+ }
+ return this;
+ },
+
+ // Remove a callback from the list
+ remove: function() {
+ jQuery.each( arguments, function( _, arg ) {
+ var index;
+ while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) {
+ list.splice( index, 1 );
+
+ // Handle firing indexes
+ if ( index <= firingIndex ) {
+ firingIndex--;
+ }
+ }
+ } );
+ return this;
+ },
+
+ // Check if a given callback is in the list.
+ // If no argument is given, return whether or not list has callbacks attached.
+ has: function( fn ) {
+ return fn ?
+ jQuery.inArray( fn, list ) > -1 :
+ list.length > 0;
+ },
+
+ // Remove all callbacks from the list
+ empty: function() {
+ if ( list ) {
+ list = [];
+ }
+ return this;
+ },
+
+ // Disable .fire and .add
+ // Abort any current/pending executions
+ // Clear all callbacks and values
+ disable: function() {
+ locked = queue = [];
+ list = memory = "";
+ return this;
+ },
+ disabled: function() {
+ return !list;
+ },
+
+ // Disable .fire
+ // Also disable .add unless we have memory (since it would have no effect)
+ // Abort any pending executions
+ lock: function() {
+ locked = queue = [];
+ if ( !memory && !firing ) {
+ list = memory = "";
+ }
+ return this;
+ },
+ locked: function() {
+ return !!locked;
+ },
+
+ // Call all callbacks with the given context and arguments
+ fireWith: function( context, args ) {
+ if ( !locked ) {
+ args = args || [];
+ args = [ context, args.slice ? args.slice() : args ];
+ queue.push( args );
+ if ( !firing ) {
+ fire();
+ }
+ }
+ return this;
+ },
+
+ // Call all the callbacks with the given arguments
+ fire: function() {
+ self.fireWith( this, arguments );
+ return this;
+ },
+
+ // To know if the callbacks have already been called at least once
+ fired: function() {
+ return !!fired;
+ }
+ };
+
+ return self;
+};
+
+
+function Identity( v ) {
+ return v;
+}
+function Thrower( ex ) {
+ throw ex;
+}
+
+function adoptValue( value, resolve, reject, noValue ) {
+ var method;
+
+ try {
+
+ // Check for promise aspect first to privilege synchronous behavior
+ if ( value && jQuery.isFunction( ( method = value.promise ) ) ) {
+ method.call( value ).done( resolve ).fail( reject );
+
+ // Other thenables
+ } else if ( value && jQuery.isFunction( ( method = value.then ) ) ) {
+ method.call( value, resolve, reject );
+
+ // Other non-thenables
+ } else {
+
+ // Control `resolve` arguments by letting Array#slice cast boolean `noValue` to integer:
+ // * false: [ value ].slice( 0 ) => resolve( value )
+ // * true: [ value ].slice( 1 ) => resolve()
+ resolve.apply( undefined, [ value ].slice( noValue ) );
+ }
+
+ // For Promises/A+, convert exceptions into rejections
+ // Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in
+ // Deferred#then to conditionally suppress rejection.
+ } catch ( value ) {
+
+ // Support: Android 4.0 only
+ // Strict mode functions invoked without .call/.apply get global-object context
+ reject.apply( undefined, [ value ] );
+ }
+}
+
+jQuery.extend( {
+
+ Deferred: function( func ) {
+ var tuples = [
+
+ // action, add listener, callbacks,
+ // ... .then handlers, argument index, [final state]
+ [ "notify", "progress", jQuery.Callbacks( "memory" ),
+ jQuery.Callbacks( "memory" ), 2 ],
+ [ "resolve", "done", jQuery.Callbacks( "once memory" ),
+ jQuery.Callbacks( "once memory" ), 0, "resolved" ],
+ [ "reject", "fail", jQuery.Callbacks( "once memory" ),
+ jQuery.Callbacks( "once memory" ), 1, "rejected" ]
+ ],
+ state = "pending",
+ promise = {
+ state: function() {
+ return state;
+ },
+ always: function() {
+ deferred.done( arguments ).fail( arguments );
+ return this;
+ },
+ "catch": function( fn ) {
+ return promise.then( null, fn );
+ },
+
+ // Keep pipe for back-compat
+ pipe: function( /* fnDone, fnFail, fnProgress */ ) {
+ var fns = arguments;
+
+ return jQuery.Deferred( function( newDefer ) {
+ jQuery.each( tuples, function( i, tuple ) {
+
+ // Map tuples (progress, done, fail) to arguments (done, fail, progress)
+ var fn = jQuery.isFunction( fns[ tuple[ 4 ] ] ) && fns[ tuple[ 4 ] ];
+
+ // deferred.progress(function() { bind to newDefer or newDefer.notify })
+ // deferred.done(function() { bind to newDefer or newDefer.resolve })
+ // deferred.fail(function() { bind to newDefer or newDefer.reject })
+ deferred[ tuple[ 1 ] ]( function() {
+ var returned = fn && fn.apply( this, arguments );
+ if ( returned && jQuery.isFunction( returned.promise ) ) {
+ returned.promise()
+ .progress( newDefer.notify )
+ .done( newDefer.resolve )
+ .fail( newDefer.reject );
+ } else {
+ newDefer[ tuple[ 0 ] + "With" ](
+ this,
+ fn ? [ returned ] : arguments
+ );
+ }
+ } );
+ } );
+ fns = null;
+ } ).promise();
+ },
+ then: function( onFulfilled, onRejected, onProgress ) {
+ var maxDepth = 0;
+ function resolve( depth, deferred, handler, special ) {
+ return function() {
+ var that = this,
+ args = arguments,
+ mightThrow = function() {
+ var returned, then;
+
+ // Support: Promises/A+ section 2.3.3.3.3
+ // https://promisesaplus.com/#point-59
+ // Ignore double-resolution attempts
+ if ( depth < maxDepth ) {
+ return;
+ }
+
+ returned = handler.apply( that, args );
+
+ // Support: Promises/A+ section 2.3.1
+ // https://promisesaplus.com/#point-48
+ if ( returned === deferred.promise() ) {
+ throw new TypeError( "Thenable self-resolution" );
+ }
+
+ // Support: Promises/A+ sections 2.3.3.1, 3.5
+ // https://promisesaplus.com/#point-54
+ // https://promisesaplus.com/#point-75
+ // Retrieve `then` only once
+ then = returned &&
+
+ // Support: Promises/A+ section 2.3.4
+ // https://promisesaplus.com/#point-64
+ // Only check objects and functions for thenability
+ ( typeof returned === "object" ||
+ typeof returned === "function" ) &&
+ returned.then;
+
+ // Handle a returned thenable
+ if ( jQuery.isFunction( then ) ) {
+
+ // Special processors (notify) just wait for resolution
+ if ( special ) {
+ then.call(
+ returned,
+ resolve( maxDepth, deferred, Identity, special ),
+ resolve( maxDepth, deferred, Thrower, special )
+ );
+
+ // Normal processors (resolve) also hook into progress
+ } else {
+
+ // ...and disregard older resolution values
+ maxDepth++;
+
+ then.call(
+ returned,
+ resolve( maxDepth, deferred, Identity, special ),
+ resolve( maxDepth, deferred, Thrower, special ),
+ resolve( maxDepth, deferred, Identity,
+ deferred.notifyWith )
+ );
+ }
+
+ // Handle all other returned values
+ } else {
+
+ // Only substitute handlers pass on context
+ // and multiple values (non-spec behavior)
+ if ( handler !== Identity ) {
+ that = undefined;
+ args = [ returned ];
+ }
+
+ // Process the value(s)
+ // Default process is resolve
+ ( special || deferred.resolveWith )( that, args );
+ }
+ },
+
+ // Only normal processors (resolve) catch and reject exceptions
+ process = special ?
+ mightThrow :
+ function() {
+ try {
+ mightThrow();
+ } catch ( e ) {
+
+ if ( jQuery.Deferred.exceptionHook ) {
+ jQuery.Deferred.exceptionHook( e,
+ process.stackTrace );
+ }
+
+ // Support: Promises/A+ section 2.3.3.3.4.1
+ // https://promisesaplus.com/#point-61
+ // Ignore post-resolution exceptions
+ if ( depth + 1 >= maxDepth ) {
+
+ // Only substitute handlers pass on context
+ // and multiple values (non-spec behavior)
+ if ( handler !== Thrower ) {
+ that = undefined;
+ args = [ e ];
+ }
+
+ deferred.rejectWith( that, args );
+ }
+ }
+ };
+
+ // Support: Promises/A+ section 2.3.3.3.1
+ // https://promisesaplus.com/#point-57
+ // Re-resolve promises immediately to dodge false rejection from
+ // subsequent errors
+ if ( depth ) {
+ process();
+ } else {
+
+ // Call an optional hook to record the stack, in case of exception
+ // since it's otherwise lost when execution goes async
+ if ( jQuery.Deferred.getStackHook ) {
+ process.stackTrace = jQuery.Deferred.getStackHook();
+ }
+ window.setTimeout( process );
+ }
+ };
+ }
+
+ return jQuery.Deferred( function( newDefer ) {
+
+ // progress_handlers.add( ... )
+ tuples[ 0 ][ 3 ].add(
+ resolve(
+ 0,
+ newDefer,
+ jQuery.isFunction( onProgress ) ?
+ onProgress :
+ Identity,
+ newDefer.notifyWith
+ )
+ );
+
+ // fulfilled_handlers.add( ... )
+ tuples[ 1 ][ 3 ].add(
+ resolve(
+ 0,
+ newDefer,
+ jQuery.isFunction( onFulfilled ) ?
+ onFulfilled :
+ Identity
+ )
+ );
+
+ // rejected_handlers.add( ... )
+ tuples[ 2 ][ 3 ].add(
+ resolve(
+ 0,
+ newDefer,
+ jQuery.isFunction( onRejected ) ?
+ onRejected :
+ Thrower
+ )
+ );
+ } ).promise();
+ },
+
+ // Get a promise for this deferred
+ // If obj is provided, the promise aspect is added to the object
+ promise: function( obj ) {
+ return obj != null ? jQuery.extend( obj, promise ) : promise;
+ }
+ },
+ deferred = {};
+
+ // Add list-specific methods
+ jQuery.each( tuples, function( i, tuple ) {
+ var list = tuple[ 2 ],
+ stateString = tuple[ 5 ];
+
+ // promise.progress = list.add
+ // promise.done = list.add
+ // promise.fail = list.add
+ promise[ tuple[ 1 ] ] = list.add;
+
+ // Handle state
+ if ( stateString ) {
+ list.add(
+ function() {
+
+ // state = "resolved" (i.e., fulfilled)
+ // state = "rejected"
+ state = stateString;
+ },
+
+ // rejected_callbacks.disable
+ // fulfilled_callbacks.disable
+ tuples[ 3 - i ][ 2 ].disable,
+
+ // progress_callbacks.lock
+ tuples[ 0 ][ 2 ].lock
+ );
+ }
+
+ // progress_handlers.fire
+ // fulfilled_handlers.fire
+ // rejected_handlers.fire
+ list.add( tuple[ 3 ].fire );
+
+ // deferred.notify = function() { deferred.notifyWith(...) }
+ // deferred.resolve = function() { deferred.resolveWith(...) }
+ // deferred.reject = function() { deferred.rejectWith(...) }
+ deferred[ tuple[ 0 ] ] = function() {
+ deferred[ tuple[ 0 ] + "With" ]( this === deferred ? undefined : this, arguments );
+ return this;
+ };
+
+ // deferred.notifyWith = list.fireWith
+ // deferred.resolveWith = list.fireWith
+ // deferred.rejectWith = list.fireWith
+ deferred[ tuple[ 0 ] + "With" ] = list.fireWith;
+ } );
+
+ // Make the deferred a promise
+ promise.promise( deferred );
+
+ // Call given func if any
+ if ( func ) {
+ func.call( deferred, deferred );
+ }
+
+ // All done!
+ return deferred;
+ },
+
+ // Deferred helper
+ when: function( singleValue ) {
+ var
+
+ // count of uncompleted subordinates
+ remaining = arguments.length,
+
+ // count of unprocessed arguments
+ i = remaining,
+
+ // subordinate fulfillment data
+ resolveContexts = Array( i ),
+ resolveValues = slice.call( arguments ),
+
+ // the master Deferred
+ master = jQuery.Deferred(),
+
+ // subordinate callback factory
+ updateFunc = function( i ) {
+ return function( value ) {
+ resolveContexts[ i ] = this;
+ resolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value;
+ if ( !( --remaining ) ) {
+ master.resolveWith( resolveContexts, resolveValues );
+ }
+ };
+ };
+
+ // Single- and empty arguments are adopted like Promise.resolve
+ if ( remaining <= 1 ) {
+ adoptValue( singleValue, master.done( updateFunc( i ) ).resolve, master.reject,
+ !remaining );
+
+ // Use .then() to unwrap secondary thenables (cf. gh-3000)
+ if ( master.state() === "pending" ||
+ jQuery.isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) {
+
+ return master.then();
+ }
+ }
+
+ // Multiple arguments are aggregated like Promise.all array elements
+ while ( i-- ) {
+ adoptValue( resolveValues[ i ], updateFunc( i ), master.reject );
+ }
+
+ return master.promise();
+ }
+} );
+
+
+// These usually indicate a programmer mistake during development,
+// warn about them ASAP rather than swallowing them by default.
+var rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;
+
+jQuery.Deferred.exceptionHook = function( error, stack ) {
+
+ // Support: IE 8 - 9 only
+ // Console exists when dev tools are open, which can happen at any time
+ if ( window.console && window.console.warn && error && rerrorNames.test( error.name ) ) {
+ window.console.warn( "jQuery.Deferred exception: " + error.message, error.stack, stack );
+ }
+};
+
+
+
+
+jQuery.readyException = function( error ) {
+ window.setTimeout( function() {
+ throw error;
+ } );
+};
+
+
+
+
+// The deferred used on DOM ready
+var readyList = jQuery.Deferred();
+
+jQuery.fn.ready = function( fn ) {
+
+ readyList
+ .then( fn )
+
+ // Wrap jQuery.readyException in a function so that the lookup
+ // happens at the time of error handling instead of callback
+ // registration.
+ .catch( function( error ) {
+ jQuery.readyException( error );
+ } );
+
+ return this;
+};
+
+jQuery.extend( {
+
+ // Is the DOM ready to be used? Set to true once it occurs.
+ isReady: false,
+
+ // A counter to track how many items to wait for before
+ // the ready event fires. See #6781
+ readyWait: 1,
+
+ // Handle when the DOM is ready
+ ready: function( wait ) {
+
+ // Abort if there are pending holds or we're already ready
+ if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) {
+ return;
+ }
+
+ // Remember that the DOM is ready
+ jQuery.isReady = true;
+
+ // If a normal DOM Ready event fired, decrement, and wait if need be
+ if ( wait !== true && --jQuery.readyWait > 0 ) {
+ return;
+ }
+
+ // If there are functions bound, to execute
+ readyList.resolveWith( document, [ jQuery ] );
+ }
+} );
+
+jQuery.ready.then = readyList.then;
+
+// The ready event handler and self cleanup method
+function completed() {
+ document.removeEventListener( "DOMContentLoaded", completed );
+ window.removeEventListener( "load", completed );
+ jQuery.ready();
+}
+
+// Catch cases where $(document).ready() is called
+// after the browser event has already occurred.
+// Support: IE <=9 - 10 only
+// Older IE sometimes signals "interactive" too soon
+if ( document.readyState === "complete" ||
+ ( document.readyState !== "loading" && !document.documentElement.doScroll ) ) {
+
+ // Handle it asynchronously to allow scripts the opportunity to delay ready
+ window.setTimeout( jQuery.ready );
+
+} else {
+
+ // Use the handy event callback
+ document.addEventListener( "DOMContentLoaded", completed );
+
+ // A fallback to window.onload, that will always work
+ window.addEventListener( "load", completed );
+}
+
+
+
+
+// Multifunctional method to get and set values of a collection
+// The value/s can optionally be executed if it's a function
+var access = function( elems, fn, key, value, chainable, emptyGet, raw ) {
+ var i = 0,
+ len = elems.length,
+ bulk = key == null;
+
+ // Sets many values
+ if ( jQuery.type( key ) === "object" ) {
+ chainable = true;
+ for ( i in key ) {
+ access( elems, fn, i, key[ i ], true, emptyGet, raw );
+ }
+
+ // Sets one value
+ } else if ( value !== undefined ) {
+ chainable = true;
+
+ if ( !jQuery.isFunction( value ) ) {
+ raw = true;
+ }
+
+ if ( bulk ) {
+
+ // Bulk operations run against the entire set
+ if ( raw ) {
+ fn.call( elems, value );
+ fn = null;
+
+ // ...except when executing function values
+ } else {
+ bulk = fn;
+ fn = function( elem, key, value ) {
+ return bulk.call( jQuery( elem ), value );
+ };
+ }
+ }
+
+ if ( fn ) {
+ for ( ; i < len; i++ ) {
+ fn(
+ elems[ i ], key, raw ?
+ value :
+ value.call( elems[ i ], i, fn( elems[ i ], key ) )
+ );
+ }
+ }
+ }
+
+ if ( chainable ) {
+ return elems;
+ }
+
+ // Gets
+ if ( bulk ) {
+ return fn.call( elems );
+ }
+
+ return len ? fn( elems[ 0 ], key ) : emptyGet;
+};
+var acceptData = function( owner ) {
+
+ // Accepts only:
+ // - Node
+ // - Node.ELEMENT_NODE
+ // - Node.DOCUMENT_NODE
+ // - Object
+ // - Any
+ return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType );
+};
+
+
+
+
+function Data() {
+ this.expando = jQuery.expando + Data.uid++;
+}
+
+Data.uid = 1;
+
+Data.prototype = {
+
+ cache: function( owner ) {
+
+ // Check if the owner object already has a cache
+ var value = owner[ this.expando ];
+
+ // If not, create one
+ if ( !value ) {
+ value = {};
+
+ // We can accept data for non-element nodes in modern browsers,
+ // but we should not, see #8335.
+ // Always return an empty object.
+ if ( acceptData( owner ) ) {
+
+ // If it is a node unlikely to be stringify-ed or looped over
+ // use plain assignment
+ if ( owner.nodeType ) {
+ owner[ this.expando ] = value;
+
+ // Otherwise secure it in a non-enumerable property
+ // configurable must be true to allow the property to be
+ // deleted when data is removed
+ } else {
+ Object.defineProperty( owner, this.expando, {
+ value: value,
+ configurable: true
+ } );
+ }
+ }
+ }
+
+ return value;
+ },
+ set: function( owner, data, value ) {
+ var prop,
+ cache = this.cache( owner );
+
+ // Handle: [ owner, key, value ] args
+ // Always use camelCase key (gh-2257)
+ if ( typeof data === "string" ) {
+ cache[ jQuery.camelCase( data ) ] = value;
+
+ // Handle: [ owner, { properties } ] args
+ } else {
+
+ // Copy the properties one-by-one to the cache object
+ for ( prop in data ) {
+ cache[ jQuery.camelCase( prop ) ] = data[ prop ];
+ }
+ }
+ return cache;
+ },
+ get: function( owner, key ) {
+ return key === undefined ?
+ this.cache( owner ) :
+
+ // Always use camelCase key (gh-2257)
+ owner[ this.expando ] && owner[ this.expando ][ jQuery.camelCase( key ) ];
+ },
+ access: function( owner, key, value ) {
+
+ // In cases where either:
+ //
+ // 1. No key was specified
+ // 2. A string key was specified, but no value provided
+ //
+ // Take the "read" path and allow the get method to determine
+ // which value to return, respectively either:
+ //
+ // 1. The entire cache object
+ // 2. The data stored at the key
+ //
+ if ( key === undefined ||
+ ( ( key && typeof key === "string" ) && value === undefined ) ) {
+
+ return this.get( owner, key );
+ }
+
+ // When the key is not a string, or both a key and value
+ // are specified, set or extend (existing objects) with either:
+ //
+ // 1. An object of properties
+ // 2. A key and value
+ //
+ this.set( owner, key, value );
+
+ // Since the "set" path can have two possible entry points
+ // return the expected data based on which path was taken[*]
+ return value !== undefined ? value : key;
+ },
+ remove: function( owner, key ) {
+ var i,
+ cache = owner[ this.expando ];
+
+ if ( cache === undefined ) {
+ return;
+ }
+
+ if ( key !== undefined ) {
+
+ // Support array or space separated string of keys
+ if ( Array.isArray( key ) ) {
+
+ // If key is an array of keys...
+ // We always set camelCase keys, so remove that.
+ key = key.map( jQuery.camelCase );
+ } else {
+ key = jQuery.camelCase( key );
+
+ // If a key with the spaces exists, use it.
+ // Otherwise, create an array by matching non-whitespace
+ key = key in cache ?
+ [ key ] :
+ ( key.match( rnothtmlwhite ) || [] );
+ }
+
+ i = key.length;
+
+ while ( i-- ) {
+ delete cache[ key[ i ] ];
+ }
+ }
+
+ // Remove the expando if there's no more data
+ if ( key === undefined || jQuery.isEmptyObject( cache ) ) {
+
+ // Support: Chrome <=35 - 45
+ // Webkit & Blink performance suffers when deleting properties
+ // from DOM nodes, so set to undefined instead
+ // https://bugs.chromium.org/p/chromium/issues/detail?id=378607 (bug restricted)
+ if ( owner.nodeType ) {
+ owner[ this.expando ] = undefined;
+ } else {
+ delete owner[ this.expando ];
+ }
+ }
+ },
+ hasData: function( owner ) {
+ var cache = owner[ this.expando ];
+ return cache !== undefined && !jQuery.isEmptyObject( cache );
+ }
+};
+var dataPriv = new Data();
+
+var dataUser = new Data();
+
+
+
+// Implementation Summary
+//
+// 1. Enforce API surface and semantic compatibility with 1.9.x branch
+// 2. Improve the module's maintainability by reducing the storage
+// paths to a single mechanism.
+// 3. Use the same single mechanism to support "private" and "user" data.
+// 4. _Never_ expose "private" data to user code (TODO: Drop _data, _removeData)
+// 5. Avoid exposing implementation details on user objects (eg. expando properties)
+// 6. Provide a clear path for implementation upgrade to WeakMap in 2014
+
+var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
+ rmultiDash = /[A-Z]/g;
+
+function getData( data ) {
+ if ( data === "true" ) {
+ return true;
+ }
+
+ if ( data === "false" ) {
+ return false;
+ }
+
+ if ( data === "null" ) {
+ return null;
+ }
+
+ // Only convert to a number if it doesn't change the string
+ if ( data === +data + "" ) {
+ return +data;
+ }
+
+ if ( rbrace.test( data ) ) {
+ return JSON.parse( data );
+ }
+
+ return data;
+}
+
+function dataAttr( elem, key, data ) {
+ var name;
+
+ // If nothing was found internally, try to fetch any
+ // data from the HTML5 data-* attribute
+ if ( data === undefined && elem.nodeType === 1 ) {
+ name = "data-" + key.replace( rmultiDash, "-$&" ).toLowerCase();
+ data = elem.getAttribute( name );
+
+ if ( typeof data === "string" ) {
+ try {
+ data = getData( data );
+ } catch ( e ) {}
+
+ // Make sure we set the data so it isn't changed later
+ dataUser.set( elem, key, data );
+ } else {
+ data = undefined;
+ }
+ }
+ return data;
+}
+
+jQuery.extend( {
+ hasData: function( elem ) {
+ return dataUser.hasData( elem ) || dataPriv.hasData( elem );
+ },
+
+ data: function( elem, name, data ) {
+ return dataUser.access( elem, name, data );
+ },
+
+ removeData: function( elem, name ) {
+ dataUser.remove( elem, name );
+ },
+
+ // TODO: Now that all calls to _data and _removeData have been replaced
+ // with direct calls to dataPriv methods, these can be deprecated.
+ _data: function( elem, name, data ) {
+ return dataPriv.access( elem, name, data );
+ },
+
+ _removeData: function( elem, name ) {
+ dataPriv.remove( elem, name );
+ }
+} );
+
+jQuery.fn.extend( {
+ data: function( key, value ) {
+ var i, name, data,
+ elem = this[ 0 ],
+ attrs = elem && elem.attributes;
+
+ // Gets all values
+ if ( key === undefined ) {
+ if ( this.length ) {
+ data = dataUser.get( elem );
+
+ if ( elem.nodeType === 1 && !dataPriv.get( elem, "hasDataAttrs" ) ) {
+ i = attrs.length;
+ while ( i-- ) {
+
+ // Support: IE 11 only
+ // The attrs elements can be null (#14894)
+ if ( attrs[ i ] ) {
+ name = attrs[ i ].name;
+ if ( name.indexOf( "data-" ) === 0 ) {
+ name = jQuery.camelCase( name.slice( 5 ) );
+ dataAttr( elem, name, data[ name ] );
+ }
+ }
+ }
+ dataPriv.set( elem, "hasDataAttrs", true );
+ }
+ }
+
+ return data;
+ }
+
+ // Sets multiple values
+ if ( typeof key === "object" ) {
+ return this.each( function() {
+ dataUser.set( this, key );
+ } );
+ }
+
+ return access( this, function( value ) {
+ var data;
+
+ // The calling jQuery object (element matches) is not empty
+ // (and therefore has an element appears at this[ 0 ]) and the
+ // `value` parameter was not undefined. An empty jQuery object
+ // will result in `undefined` for elem = this[ 0 ] which will
+ // throw an exception if an attempt to read a data cache is made.
+ if ( elem && value === undefined ) {
+
+ // Attempt to get data from the cache
+ // The key will always be camelCased in Data
+ data = dataUser.get( elem, key );
+ if ( data !== undefined ) {
+ return data;
+ }
+
+ // Attempt to "discover" the data in
+ // HTML5 custom data-* attrs
+ data = dataAttr( elem, key );
+ if ( data !== undefined ) {
+ return data;
+ }
+
+ // We tried really hard, but the data doesn't exist.
+ return;
+ }
+
+ // Set the data...
+ this.each( function() {
+
+ // We always store the camelCased key
+ dataUser.set( this, key, value );
+ } );
+ }, null, value, arguments.length > 1, null, true );
+ },
+
+ removeData: function( key ) {
+ return this.each( function() {
+ dataUser.remove( this, key );
+ } );
+ }
+} );
+
+
+jQuery.extend( {
+ queue: function( elem, type, data ) {
+ var queue;
+
+ if ( elem ) {
+ type = ( type || "fx" ) + "queue";
+ queue = dataPriv.get( elem, type );
+
+ // Speed up dequeue by getting out quickly if this is just a lookup
+ if ( data ) {
+ if ( !queue || Array.isArray( data ) ) {
+ queue = dataPriv.access( elem, type, jQuery.makeArray( data ) );
+ } else {
+ queue.push( data );
+ }
+ }
+ return queue || [];
+ }
+ },
+
+ dequeue: function( elem, type ) {
+ type = type || "fx";
+
+ var queue = jQuery.queue( elem, type ),
+ startLength = queue.length,
+ fn = queue.shift(),
+ hooks = jQuery._queueHooks( elem, type ),
+ next = function() {
+ jQuery.dequeue( elem, type );
+ };
+
+ // If the fx queue is dequeued, always remove the progress sentinel
+ if ( fn === "inprogress" ) {
+ fn = queue.shift();
+ startLength--;
+ }
+
+ if ( fn ) {
+
+ // Add a progress sentinel to prevent the fx queue from being
+ // automatically dequeued
+ if ( type === "fx" ) {
+ queue.unshift( "inprogress" );
+ }
+
+ // Clear up the last queue stop function
+ delete hooks.stop;
+ fn.call( elem, next, hooks );
+ }
+
+ if ( !startLength && hooks ) {
+ hooks.empty.fire();
+ }
+ },
+
+ // Not public - generate a queueHooks object, or return the current one
+ _queueHooks: function( elem, type ) {
+ var key = type + "queueHooks";
+ return dataPriv.get( elem, key ) || dataPriv.access( elem, key, {
+ empty: jQuery.Callbacks( "once memory" ).add( function() {
+ dataPriv.remove( elem, [ type + "queue", key ] );
+ } )
+ } );
+ }
+} );
+
+jQuery.fn.extend( {
+ queue: function( type, data ) {
+ var setter = 2;
+
+ if ( typeof type !== "string" ) {
+ data = type;
+ type = "fx";
+ setter--;
+ }
+
+ if ( arguments.length < setter ) {
+ return jQuery.queue( this[ 0 ], type );
+ }
+
+ return data === undefined ?
+ this :
+ this.each( function() {
+ var queue = jQuery.queue( this, type, data );
+
+ // Ensure a hooks for this queue
+ jQuery._queueHooks( this, type );
+
+ if ( type === "fx" && queue[ 0 ] !== "inprogress" ) {
+ jQuery.dequeue( this, type );
+ }
+ } );
+ },
+ dequeue: function( type ) {
+ return this.each( function() {
+ jQuery.dequeue( this, type );
+ } );
+ },
+ clearQueue: function( type ) {
+ return this.queue( type || "fx", [] );
+ },
+
+ // Get a promise resolved when queues of a certain type
+ // are emptied (fx is the type by default)
+ promise: function( type, obj ) {
+ var tmp,
+ count = 1,
+ defer = jQuery.Deferred(),
+ elements = this,
+ i = this.length,
+ resolve = function() {
+ if ( !( --count ) ) {
+ defer.resolveWith( elements, [ elements ] );
+ }
+ };
+
+ if ( typeof type !== "string" ) {
+ obj = type;
+ type = undefined;
+ }
+ type = type || "fx";
+
+ while ( i-- ) {
+ tmp = dataPriv.get( elements[ i ], type + "queueHooks" );
+ if ( tmp && tmp.empty ) {
+ count++;
+ tmp.empty.add( resolve );
+ }
+ }
+ resolve();
+ return defer.promise( obj );
+ }
+} );
+var pnum = ( /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/ ).source;
+
+var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" );
+
+
+var cssExpand = [ "Top", "Right", "Bottom", "Left" ];
+
+var isHiddenWithinTree = function( elem, el ) {
+
+ // isHiddenWithinTree might be called from jQuery#filter function;
+ // in that case, element will be second argument
+ elem = el || elem;
+
+ // Inline style trumps all
+ return elem.style.display === "none" ||
+ elem.style.display === "" &&
+
+ // Otherwise, check computed style
+ // Support: Firefox <=43 - 45
+ // Disconnected elements can have computed display: none, so first confirm that elem is
+ // in the document.
+ jQuery.contains( elem.ownerDocument, elem ) &&
+
+ jQuery.css( elem, "display" ) === "none";
+ };
+
+var swap = function( elem, options, callback, args ) {
+ var ret, name,
+ old = {};
+
+ // Remember the old values, and insert the new ones
+ for ( name in options ) {
+ old[ name ] = elem.style[ name ];
+ elem.style[ name ] = options[ name ];
+ }
+
+ ret = callback.apply( elem, args || [] );
+
+ // Revert the old values
+ for ( name in options ) {
+ elem.style[ name ] = old[ name ];
+ }
+
+ return ret;
+};
+
+
+
+
+function adjustCSS( elem, prop, valueParts, tween ) {
+ var adjusted,
+ scale = 1,
+ maxIterations = 20,
+ currentValue = tween ?
+ function() {
+ return tween.cur();
+ } :
+ function() {
+ return jQuery.css( elem, prop, "" );
+ },
+ initial = currentValue(),
+ unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ),
+
+ // Starting value computation is required for potential unit mismatches
+ initialInUnit = ( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) &&
+ rcssNum.exec( jQuery.css( elem, prop ) );
+
+ if ( initialInUnit && initialInUnit[ 3 ] !== unit ) {
+
+ // Trust units reported by jQuery.css
+ unit = unit || initialInUnit[ 3 ];
+
+ // Make sure we update the tween properties later on
+ valueParts = valueParts || [];
+
+ // Iteratively approximate from a nonzero starting point
+ initialInUnit = +initial || 1;
+
+ do {
+
+ // If previous iteration zeroed out, double until we get *something*.
+ // Use string for doubling so we don't accidentally see scale as unchanged below
+ scale = scale || ".5";
+
+ // Adjust and apply
+ initialInUnit = initialInUnit / scale;
+ jQuery.style( elem, prop, initialInUnit + unit );
+
+ // Update scale, tolerating zero or NaN from tween.cur()
+ // Break the loop if scale is unchanged or perfect, or if we've just had enough.
+ } while (
+ scale !== ( scale = currentValue() / initial ) && scale !== 1 && --maxIterations
+ );
+ }
+
+ if ( valueParts ) {
+ initialInUnit = +initialInUnit || +initial || 0;
+
+ // Apply relative offset (+=/-=) if specified
+ adjusted = valueParts[ 1 ] ?
+ initialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] :
+ +valueParts[ 2 ];
+ if ( tween ) {
+ tween.unit = unit;
+ tween.start = initialInUnit;
+ tween.end = adjusted;
+ }
+ }
+ return adjusted;
+}
+
+
+var defaultDisplayMap = {};
+
+function getDefaultDisplay( elem ) {
+ var temp,
+ doc = elem.ownerDocument,
+ nodeName = elem.nodeName,
+ display = defaultDisplayMap[ nodeName ];
+
+ if ( display ) {
+ return display;
+ }
+
+ temp = doc.body.appendChild( doc.createElement( nodeName ) );
+ display = jQuery.css( temp, "display" );
+
+ temp.parentNode.removeChild( temp );
+
+ if ( display === "none" ) {
+ display = "block";
+ }
+ defaultDisplayMap[ nodeName ] = display;
+
+ return display;
+}
+
+function showHide( elements, show ) {
+ var display, elem,
+ values = [],
+ index = 0,
+ length = elements.length;
+
+ // Determine new display value for elements that need to change
+ for ( ; index < length; index++ ) {
+ elem = elements[ index ];
+ if ( !elem.style ) {
+ continue;
+ }
+
+ display = elem.style.display;
+ if ( show ) {
+
+ // Since we force visibility upon cascade-hidden elements, an immediate (and slow)
+ // check is required in this first loop unless we have a nonempty display value (either
+ // inline or about-to-be-restored)
+ if ( display === "none" ) {
+ values[ index ] = dataPriv.get( elem, "display" ) || null;
+ if ( !values[ index ] ) {
+ elem.style.display = "";
+ }
+ }
+ if ( elem.style.display === "" && isHiddenWithinTree( elem ) ) {
+ values[ index ] = getDefaultDisplay( elem );
+ }
+ } else {
+ if ( display !== "none" ) {
+ values[ index ] = "none";
+
+ // Remember what we're overwriting
+ dataPriv.set( elem, "display", display );
+ }
+ }
+ }
+
+ // Set the display of the elements in a second loop to avoid constant reflow
+ for ( index = 0; index < length; index++ ) {
+ if ( values[ index ] != null ) {
+ elements[ index ].style.display = values[ index ];
+ }
+ }
+
+ return elements;
+}
+
+jQuery.fn.extend( {
+ show: function() {
+ return showHide( this, true );
+ },
+ hide: function() {
+ return showHide( this );
+ },
+ toggle: function( state ) {
+ if ( typeof state === "boolean" ) {
+ return state ? this.show() : this.hide();
+ }
+
+ return this.each( function() {
+ if ( isHiddenWithinTree( this ) ) {
+ jQuery( this ).show();
+ } else {
+ jQuery( this ).hide();
+ }
+ } );
+ }
+} );
+var rcheckableType = ( /^(?:checkbox|radio)$/i );
+
+var rtagName = ( /<([a-z][^\/\0>\x20\t\r\n\f]+)/i );
+
+var rscriptType = ( /^$|\/(?:java|ecma)script/i );
+
+
+
+// We have to close these tags to support XHTML (#13200)
+var wrapMap = {
+
+ // Support: IE <=9 only
+ option: [ 1, "", " " ],
+
+ // XHTML parsers do not magically insert elements in the
+ // same way that tag soup parsers do. So we cannot shorten
+ // this by omitting or other required elements.
+ thead: [ 1, "" ],
+ col: [ 2, "" ],
+ tr: [ 2, "" ],
+ td: [ 3, "" ],
+
+ _default: [ 0, "", "" ]
+};
+
+// Support: IE <=9 only
+wrapMap.optgroup = wrapMap.option;
+
+wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;
+wrapMap.th = wrapMap.td;
+
+
+function getAll( context, tag ) {
+
+ // Support: IE <=9 - 11 only
+ // Use typeof to avoid zero-argument method invocation on host objects (#15151)
+ var ret;
+
+ if ( typeof context.getElementsByTagName !== "undefined" ) {
+ ret = context.getElementsByTagName( tag || "*" );
+
+ } else if ( typeof context.querySelectorAll !== "undefined" ) {
+ ret = context.querySelectorAll( tag || "*" );
+
+ } else {
+ ret = [];
+ }
+
+ if ( tag === undefined || tag && nodeName( context, tag ) ) {
+ return jQuery.merge( [ context ], ret );
+ }
+
+ return ret;
+}
+
+
+// Mark scripts as having already been evaluated
+function setGlobalEval( elems, refElements ) {
+ var i = 0,
+ l = elems.length;
+
+ for ( ; i < l; i++ ) {
+ dataPriv.set(
+ elems[ i ],
+ "globalEval",
+ !refElements || dataPriv.get( refElements[ i ], "globalEval" )
+ );
+ }
+}
+
+
+var rhtml = /<|?\w+;/;
+
+function buildFragment( elems, context, scripts, selection, ignored ) {
+ var elem, tmp, tag, wrap, contains, j,
+ fragment = context.createDocumentFragment(),
+ nodes = [],
+ i = 0,
+ l = elems.length;
+
+ for ( ; i < l; i++ ) {
+ elem = elems[ i ];
+
+ if ( elem || elem === 0 ) {
+
+ // Add nodes directly
+ if ( jQuery.type( elem ) === "object" ) {
+
+ // Support: Android <=4.0 only, PhantomJS 1 only
+ // push.apply(_, arraylike) throws on ancient WebKit
+ jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem );
+
+ // Convert non-html into a text node
+ } else if ( !rhtml.test( elem ) ) {
+ nodes.push( context.createTextNode( elem ) );
+
+ // Convert html into DOM nodes
+ } else {
+ tmp = tmp || fragment.appendChild( context.createElement( "div" ) );
+
+ // Deserialize a standard representation
+ tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase();
+ wrap = wrapMap[ tag ] || wrapMap._default;
+ tmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ];
+
+ // Descend through wrappers to the right content
+ j = wrap[ 0 ];
+ while ( j-- ) {
+ tmp = tmp.lastChild;
+ }
+
+ // Support: Android <=4.0 only, PhantomJS 1 only
+ // push.apply(_, arraylike) throws on ancient WebKit
+ jQuery.merge( nodes, tmp.childNodes );
+
+ // Remember the top-level container
+ tmp = fragment.firstChild;
+
+ // Ensure the created nodes are orphaned (#12392)
+ tmp.textContent = "";
+ }
+ }
+ }
+
+ // Remove wrapper from fragment
+ fragment.textContent = "";
+
+ i = 0;
+ while ( ( elem = nodes[ i++ ] ) ) {
+
+ // Skip elements already in the context collection (trac-4087)
+ if ( selection && jQuery.inArray( elem, selection ) > -1 ) {
+ if ( ignored ) {
+ ignored.push( elem );
+ }
+ continue;
+ }
+
+ contains = jQuery.contains( elem.ownerDocument, elem );
+
+ // Append to fragment
+ tmp = getAll( fragment.appendChild( elem ), "script" );
+
+ // Preserve script evaluation history
+ if ( contains ) {
+ setGlobalEval( tmp );
+ }
+
+ // Capture executables
+ if ( scripts ) {
+ j = 0;
+ while ( ( elem = tmp[ j++ ] ) ) {
+ if ( rscriptType.test( elem.type || "" ) ) {
+ scripts.push( elem );
+ }
+ }
+ }
+ }
+
+ return fragment;
+}
+
+
+( function() {
+ var fragment = document.createDocumentFragment(),
+ div = fragment.appendChild( document.createElement( "div" ) ),
+ input = document.createElement( "input" );
+
+ // Support: Android 4.0 - 4.3 only
+ // Check state lost if the name is set (#11217)
+ // Support: Windows Web Apps (WWA)
+ // `name` and `type` must use .setAttribute for WWA (#14901)
+ input.setAttribute( "type", "radio" );
+ input.setAttribute( "checked", "checked" );
+ input.setAttribute( "name", "t" );
+
+ div.appendChild( input );
+
+ // Support: Android <=4.1 only
+ // Older WebKit doesn't clone checked state correctly in fragments
+ support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked;
+
+ // Support: IE <=11 only
+ // Make sure textarea (and checkbox) defaultValue is properly cloned
+ div.innerHTML = "";
+ support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue;
+} )();
+var documentElement = document.documentElement;
+
+
+
+var
+ rkeyEvent = /^key/,
+ rmouseEvent = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,
+ rtypenamespace = /^([^.]*)(?:\.(.+)|)/;
+
+function returnTrue() {
+ return true;
+}
+
+function returnFalse() {
+ return false;
+}
+
+// Support: IE <=9 only
+// See #13393 for more info
+function safeActiveElement() {
+ try {
+ return document.activeElement;
+ } catch ( err ) { }
+}
+
+function on( elem, types, selector, data, fn, one ) {
+ var origFn, type;
+
+ // Types can be a map of types/handlers
+ if ( typeof types === "object" ) {
+
+ // ( types-Object, selector, data )
+ if ( typeof selector !== "string" ) {
+
+ // ( types-Object, data )
+ data = data || selector;
+ selector = undefined;
+ }
+ for ( type in types ) {
+ on( elem, type, selector, data, types[ type ], one );
+ }
+ return elem;
+ }
+
+ if ( data == null && fn == null ) {
+
+ // ( types, fn )
+ fn = selector;
+ data = selector = undefined;
+ } else if ( fn == null ) {
+ if ( typeof selector === "string" ) {
+
+ // ( types, selector, fn )
+ fn = data;
+ data = undefined;
+ } else {
+
+ // ( types, data, fn )
+ fn = data;
+ data = selector;
+ selector = undefined;
+ }
+ }
+ if ( fn === false ) {
+ fn = returnFalse;
+ } else if ( !fn ) {
+ return elem;
+ }
+
+ if ( one === 1 ) {
+ origFn = fn;
+ fn = function( event ) {
+
+ // Can use an empty set, since event contains the info
+ jQuery().off( event );
+ return origFn.apply( this, arguments );
+ };
+
+ // Use same guid so caller can remove using origFn
+ fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ );
+ }
+ return elem.each( function() {
+ jQuery.event.add( this, types, fn, data, selector );
+ } );
+}
+
+/*
+ * Helper functions for managing events -- not part of the public interface.
+ * Props to Dean Edwards' addEvent library for many of the ideas.
+ */
+jQuery.event = {
+
+ global: {},
+
+ add: function( elem, types, handler, data, selector ) {
+
+ var handleObjIn, eventHandle, tmp,
+ events, t, handleObj,
+ special, handlers, type, namespaces, origType,
+ elemData = dataPriv.get( elem );
+
+ // Don't attach events to noData or text/comment nodes (but allow plain objects)
+ if ( !elemData ) {
+ return;
+ }
+
+ // Caller can pass in an object of custom data in lieu of the handler
+ if ( handler.handler ) {
+ handleObjIn = handler;
+ handler = handleObjIn.handler;
+ selector = handleObjIn.selector;
+ }
+
+ // Ensure that invalid selectors throw exceptions at attach time
+ // Evaluate against documentElement in case elem is a non-element node (e.g., document)
+ if ( selector ) {
+ jQuery.find.matchesSelector( documentElement, selector );
+ }
+
+ // Make sure that the handler has a unique ID, used to find/remove it later
+ if ( !handler.guid ) {
+ handler.guid = jQuery.guid++;
+ }
+
+ // Init the element's event structure and main handler, if this is the first
+ if ( !( events = elemData.events ) ) {
+ events = elemData.events = {};
+ }
+ if ( !( eventHandle = elemData.handle ) ) {
+ eventHandle = elemData.handle = function( e ) {
+
+ // Discard the second event of a jQuery.event.trigger() and
+ // when an event is called after a page has unloaded
+ return typeof jQuery !== "undefined" && jQuery.event.triggered !== e.type ?
+ jQuery.event.dispatch.apply( elem, arguments ) : undefined;
+ };
+ }
+
+ // Handle multiple events separated by a space
+ types = ( types || "" ).match( rnothtmlwhite ) || [ "" ];
+ t = types.length;
+ while ( t-- ) {
+ tmp = rtypenamespace.exec( types[ t ] ) || [];
+ type = origType = tmp[ 1 ];
+ namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort();
+
+ // There *must* be a type, no attaching namespace-only handlers
+ if ( !type ) {
+ continue;
+ }
+
+ // If event changes its type, use the special event handlers for the changed type
+ special = jQuery.event.special[ type ] || {};
+
+ // If selector defined, determine special event api type, otherwise given type
+ type = ( selector ? special.delegateType : special.bindType ) || type;
+
+ // Update special based on newly reset type
+ special = jQuery.event.special[ type ] || {};
+
+ // handleObj is passed to all event handlers
+ handleObj = jQuery.extend( {
+ type: type,
+ origType: origType,
+ data: data,
+ handler: handler,
+ guid: handler.guid,
+ selector: selector,
+ needsContext: selector && jQuery.expr.match.needsContext.test( selector ),
+ namespace: namespaces.join( "." )
+ }, handleObjIn );
+
+ // Init the event handler queue if we're the first
+ if ( !( handlers = events[ type ] ) ) {
+ handlers = events[ type ] = [];
+ handlers.delegateCount = 0;
+
+ // Only use addEventListener if the special events handler returns false
+ if ( !special.setup ||
+ special.setup.call( elem, data, namespaces, eventHandle ) === false ) {
+
+ if ( elem.addEventListener ) {
+ elem.addEventListener( type, eventHandle );
+ }
+ }
+ }
+
+ if ( special.add ) {
+ special.add.call( elem, handleObj );
+
+ if ( !handleObj.handler.guid ) {
+ handleObj.handler.guid = handler.guid;
+ }
+ }
+
+ // Add to the element's handler list, delegates in front
+ if ( selector ) {
+ handlers.splice( handlers.delegateCount++, 0, handleObj );
+ } else {
+ handlers.push( handleObj );
+ }
+
+ // Keep track of which events have ever been used, for event optimization
+ jQuery.event.global[ type ] = true;
+ }
+
+ },
+
+ // Detach an event or set of events from an element
+ remove: function( elem, types, handler, selector, mappedTypes ) {
+
+ var j, origCount, tmp,
+ events, t, handleObj,
+ special, handlers, type, namespaces, origType,
+ elemData = dataPriv.hasData( elem ) && dataPriv.get( elem );
+
+ if ( !elemData || !( events = elemData.events ) ) {
+ return;
+ }
+
+ // Once for each type.namespace in types; type may be omitted
+ types = ( types || "" ).match( rnothtmlwhite ) || [ "" ];
+ t = types.length;
+ while ( t-- ) {
+ tmp = rtypenamespace.exec( types[ t ] ) || [];
+ type = origType = tmp[ 1 ];
+ namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort();
+
+ // Unbind all events (on this namespace, if provided) for the element
+ if ( !type ) {
+ for ( type in events ) {
+ jQuery.event.remove( elem, type + types[ t ], handler, selector, true );
+ }
+ continue;
+ }
+
+ special = jQuery.event.special[ type ] || {};
+ type = ( selector ? special.delegateType : special.bindType ) || type;
+ handlers = events[ type ] || [];
+ tmp = tmp[ 2 ] &&
+ new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" );
+
+ // Remove matching events
+ origCount = j = handlers.length;
+ while ( j-- ) {
+ handleObj = handlers[ j ];
+
+ if ( ( mappedTypes || origType === handleObj.origType ) &&
+ ( !handler || handler.guid === handleObj.guid ) &&
+ ( !tmp || tmp.test( handleObj.namespace ) ) &&
+ ( !selector || selector === handleObj.selector ||
+ selector === "**" && handleObj.selector ) ) {
+ handlers.splice( j, 1 );
+
+ if ( handleObj.selector ) {
+ handlers.delegateCount--;
+ }
+ if ( special.remove ) {
+ special.remove.call( elem, handleObj );
+ }
+ }
+ }
+
+ // Remove generic event handler if we removed something and no more handlers exist
+ // (avoids potential for endless recursion during removal of special event handlers)
+ if ( origCount && !handlers.length ) {
+ if ( !special.teardown ||
+ special.teardown.call( elem, namespaces, elemData.handle ) === false ) {
+
+ jQuery.removeEvent( elem, type, elemData.handle );
+ }
+
+ delete events[ type ];
+ }
+ }
+
+ // Remove data and the expando if it's no longer used
+ if ( jQuery.isEmptyObject( events ) ) {
+ dataPriv.remove( elem, "handle events" );
+ }
+ },
+
+ dispatch: function( nativeEvent ) {
+
+ // Make a writable jQuery.Event from the native event object
+ var event = jQuery.event.fix( nativeEvent );
+
+ var i, j, ret, matched, handleObj, handlerQueue,
+ args = new Array( arguments.length ),
+ handlers = ( dataPriv.get( this, "events" ) || {} )[ event.type ] || [],
+ special = jQuery.event.special[ event.type ] || {};
+
+ // Use the fix-ed jQuery.Event rather than the (read-only) native event
+ args[ 0 ] = event;
+
+ for ( i = 1; i < arguments.length; i++ ) {
+ args[ i ] = arguments[ i ];
+ }
+
+ event.delegateTarget = this;
+
+ // Call the preDispatch hook for the mapped type, and let it bail if desired
+ if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) {
+ return;
+ }
+
+ // Determine handlers
+ handlerQueue = jQuery.event.handlers.call( this, event, handlers );
+
+ // Run delegates first; they may want to stop propagation beneath us
+ i = 0;
+ while ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) {
+ event.currentTarget = matched.elem;
+
+ j = 0;
+ while ( ( handleObj = matched.handlers[ j++ ] ) &&
+ !event.isImmediatePropagationStopped() ) {
+
+ // Triggered event must either 1) have no namespace, or 2) have namespace(s)
+ // a subset or equal to those in the bound event (both can have no namespace).
+ if ( !event.rnamespace || event.rnamespace.test( handleObj.namespace ) ) {
+
+ event.handleObj = handleObj;
+ event.data = handleObj.data;
+
+ ret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle ||
+ handleObj.handler ).apply( matched.elem, args );
+
+ if ( ret !== undefined ) {
+ if ( ( event.result = ret ) === false ) {
+ event.preventDefault();
+ event.stopPropagation();
+ }
+ }
+ }
+ }
+ }
+
+ // Call the postDispatch hook for the mapped type
+ if ( special.postDispatch ) {
+ special.postDispatch.call( this, event );
+ }
+
+ return event.result;
+ },
+
+ handlers: function( event, handlers ) {
+ var i, handleObj, sel, matchedHandlers, matchedSelectors,
+ handlerQueue = [],
+ delegateCount = handlers.delegateCount,
+ cur = event.target;
+
+ // Find delegate handlers
+ if ( delegateCount &&
+
+ // Support: IE <=9
+ // Black-hole SVG instance trees (trac-13180)
+ cur.nodeType &&
+
+ // Support: Firefox <=42
+ // Suppress spec-violating clicks indicating a non-primary pointer button (trac-3861)
+ // https://www.w3.org/TR/DOM-Level-3-Events/#event-type-click
+ // Support: IE 11 only
+ // ...but not arrow key "clicks" of radio inputs, which can have `button` -1 (gh-2343)
+ !( event.type === "click" && event.button >= 1 ) ) {
+
+ for ( ; cur !== this; cur = cur.parentNode || this ) {
+
+ // Don't check non-elements (#13208)
+ // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764)
+ if ( cur.nodeType === 1 && !( event.type === "click" && cur.disabled === true ) ) {
+ matchedHandlers = [];
+ matchedSelectors = {};
+ for ( i = 0; i < delegateCount; i++ ) {
+ handleObj = handlers[ i ];
+
+ // Don't conflict with Object.prototype properties (#13203)
+ sel = handleObj.selector + " ";
+
+ if ( matchedSelectors[ sel ] === undefined ) {
+ matchedSelectors[ sel ] = handleObj.needsContext ?
+ jQuery( sel, this ).index( cur ) > -1 :
+ jQuery.find( sel, this, null, [ cur ] ).length;
+ }
+ if ( matchedSelectors[ sel ] ) {
+ matchedHandlers.push( handleObj );
+ }
+ }
+ if ( matchedHandlers.length ) {
+ handlerQueue.push( { elem: cur, handlers: matchedHandlers } );
+ }
+ }
+ }
+ }
+
+ // Add the remaining (directly-bound) handlers
+ cur = this;
+ if ( delegateCount < handlers.length ) {
+ handlerQueue.push( { elem: cur, handlers: handlers.slice( delegateCount ) } );
+ }
+
+ return handlerQueue;
+ },
+
+ addProp: function( name, hook ) {
+ Object.defineProperty( jQuery.Event.prototype, name, {
+ enumerable: true,
+ configurable: true,
+
+ get: jQuery.isFunction( hook ) ?
+ function() {
+ if ( this.originalEvent ) {
+ return hook( this.originalEvent );
+ }
+ } :
+ function() {
+ if ( this.originalEvent ) {
+ return this.originalEvent[ name ];
+ }
+ },
+
+ set: function( value ) {
+ Object.defineProperty( this, name, {
+ enumerable: true,
+ configurable: true,
+ writable: true,
+ value: value
+ } );
+ }
+ } );
+ },
+
+ fix: function( originalEvent ) {
+ return originalEvent[ jQuery.expando ] ?
+ originalEvent :
+ new jQuery.Event( originalEvent );
+ },
+
+ special: {
+ load: {
+
+ // Prevent triggered image.load events from bubbling to window.load
+ noBubble: true
+ },
+ focus: {
+
+ // Fire native event if possible so blur/focus sequence is correct
+ trigger: function() {
+ if ( this !== safeActiveElement() && this.focus ) {
+ this.focus();
+ return false;
+ }
+ },
+ delegateType: "focusin"
+ },
+ blur: {
+ trigger: function() {
+ if ( this === safeActiveElement() && this.blur ) {
+ this.blur();
+ return false;
+ }
+ },
+ delegateType: "focusout"
+ },
+ click: {
+
+ // For checkbox, fire native event so checked state will be right
+ trigger: function() {
+ if ( this.type === "checkbox" && this.click && nodeName( this, "input" ) ) {
+ this.click();
+ return false;
+ }
+ },
+
+ // For cross-browser consistency, don't fire native .click() on links
+ _default: function( event ) {
+ return nodeName( event.target, "a" );
+ }
+ },
+
+ beforeunload: {
+ postDispatch: function( event ) {
+
+ // Support: Firefox 20+
+ // Firefox doesn't alert if the returnValue field is not set.
+ if ( event.result !== undefined && event.originalEvent ) {
+ event.originalEvent.returnValue = event.result;
+ }
+ }
+ }
+ }
+};
+
+jQuery.removeEvent = function( elem, type, handle ) {
+
+ // This "if" is needed for plain objects
+ if ( elem.removeEventListener ) {
+ elem.removeEventListener( type, handle );
+ }
+};
+
+jQuery.Event = function( src, props ) {
+
+ // Allow instantiation without the 'new' keyword
+ if ( !( this instanceof jQuery.Event ) ) {
+ return new jQuery.Event( src, props );
+ }
+
+ // Event object
+ if ( src && src.type ) {
+ this.originalEvent = src;
+ this.type = src.type;
+
+ // Events bubbling up the document may have been marked as prevented
+ // by a handler lower down the tree; reflect the correct value.
+ this.isDefaultPrevented = src.defaultPrevented ||
+ src.defaultPrevented === undefined &&
+
+ // Support: Android <=2.3 only
+ src.returnValue === false ?
+ returnTrue :
+ returnFalse;
+
+ // Create target properties
+ // Support: Safari <=6 - 7 only
+ // Target should not be a text node (#504, #13143)
+ this.target = ( src.target && src.target.nodeType === 3 ) ?
+ src.target.parentNode :
+ src.target;
+
+ this.currentTarget = src.currentTarget;
+ this.relatedTarget = src.relatedTarget;
+
+ // Event type
+ } else {
+ this.type = src;
+ }
+
+ // Put explicitly provided properties onto the event object
+ if ( props ) {
+ jQuery.extend( this, props );
+ }
+
+ // Create a timestamp if incoming event doesn't have one
+ this.timeStamp = src && src.timeStamp || jQuery.now();
+
+ // Mark it as fixed
+ this[ jQuery.expando ] = true;
+};
+
+// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding
+// https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html
+jQuery.Event.prototype = {
+ constructor: jQuery.Event,
+ isDefaultPrevented: returnFalse,
+ isPropagationStopped: returnFalse,
+ isImmediatePropagationStopped: returnFalse,
+ isSimulated: false,
+
+ preventDefault: function() {
+ var e = this.originalEvent;
+
+ this.isDefaultPrevented = returnTrue;
+
+ if ( e && !this.isSimulated ) {
+ e.preventDefault();
+ }
+ },
+ stopPropagation: function() {
+ var e = this.originalEvent;
+
+ this.isPropagationStopped = returnTrue;
+
+ if ( e && !this.isSimulated ) {
+ e.stopPropagation();
+ }
+ },
+ stopImmediatePropagation: function() {
+ var e = this.originalEvent;
+
+ this.isImmediatePropagationStopped = returnTrue;
+
+ if ( e && !this.isSimulated ) {
+ e.stopImmediatePropagation();
+ }
+
+ this.stopPropagation();
+ }
+};
+
+// Includes all common event props including KeyEvent and MouseEvent specific props
+jQuery.each( {
+ altKey: true,
+ bubbles: true,
+ cancelable: true,
+ changedTouches: true,
+ ctrlKey: true,
+ detail: true,
+ eventPhase: true,
+ metaKey: true,
+ pageX: true,
+ pageY: true,
+ shiftKey: true,
+ view: true,
+ "char": true,
+ charCode: true,
+ key: true,
+ keyCode: true,
+ button: true,
+ buttons: true,
+ clientX: true,
+ clientY: true,
+ offsetX: true,
+ offsetY: true,
+ pointerId: true,
+ pointerType: true,
+ screenX: true,
+ screenY: true,
+ targetTouches: true,
+ toElement: true,
+ touches: true,
+
+ which: function( event ) {
+ var button = event.button;
+
+ // Add which for key events
+ if ( event.which == null && rkeyEvent.test( event.type ) ) {
+ return event.charCode != null ? event.charCode : event.keyCode;
+ }
+
+ // Add which for click: 1 === left; 2 === middle; 3 === right
+ if ( !event.which && button !== undefined && rmouseEvent.test( event.type ) ) {
+ if ( button & 1 ) {
+ return 1;
+ }
+
+ if ( button & 2 ) {
+ return 3;
+ }
+
+ if ( button & 4 ) {
+ return 2;
+ }
+
+ return 0;
+ }
+
+ return event.which;
+ }
+}, jQuery.event.addProp );
+
+// Create mouseenter/leave events using mouseover/out and event-time checks
+// so that event delegation works in jQuery.
+// Do the same for pointerenter/pointerleave and pointerover/pointerout
+//
+// Support: Safari 7 only
+// Safari sends mouseenter too often; see:
+// https://bugs.chromium.org/p/chromium/issues/detail?id=470258
+// for the description of the bug (it existed in older Chrome versions as well).
+jQuery.each( {
+ mouseenter: "mouseover",
+ mouseleave: "mouseout",
+ pointerenter: "pointerover",
+ pointerleave: "pointerout"
+}, function( orig, fix ) {
+ jQuery.event.special[ orig ] = {
+ delegateType: fix,
+ bindType: fix,
+
+ handle: function( event ) {
+ var ret,
+ target = this,
+ related = event.relatedTarget,
+ handleObj = event.handleObj;
+
+ // For mouseenter/leave call the handler if related is outside the target.
+ // NB: No relatedTarget if the mouse left/entered the browser window
+ if ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) {
+ event.type = handleObj.origType;
+ ret = handleObj.handler.apply( this, arguments );
+ event.type = fix;
+ }
+ return ret;
+ }
+ };
+} );
+
+jQuery.fn.extend( {
+
+ on: function( types, selector, data, fn ) {
+ return on( this, types, selector, data, fn );
+ },
+ one: function( types, selector, data, fn ) {
+ return on( this, types, selector, data, fn, 1 );
+ },
+ off: function( types, selector, fn ) {
+ var handleObj, type;
+ if ( types && types.preventDefault && types.handleObj ) {
+
+ // ( event ) dispatched jQuery.Event
+ handleObj = types.handleObj;
+ jQuery( types.delegateTarget ).off(
+ handleObj.namespace ?
+ handleObj.origType + "." + handleObj.namespace :
+ handleObj.origType,
+ handleObj.selector,
+ handleObj.handler
+ );
+ return this;
+ }
+ if ( typeof types === "object" ) {
+
+ // ( types-object [, selector] )
+ for ( type in types ) {
+ this.off( type, selector, types[ type ] );
+ }
+ return this;
+ }
+ if ( selector === false || typeof selector === "function" ) {
+
+ // ( types [, fn] )
+ fn = selector;
+ selector = undefined;
+ }
+ if ( fn === false ) {
+ fn = returnFalse;
+ }
+ return this.each( function() {
+ jQuery.event.remove( this, types, fn, selector );
+ } );
+ }
+} );
+
+
+var
+
+ /* eslint-disable max-len */
+
+ // See https://github.com/eslint/eslint/issues/3229
+ rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,
+
+ /* eslint-enable */
+
+ // Support: IE <=10 - 11, Edge 12 - 13
+ // In IE/Edge using regex groups here causes severe slowdowns.
+ // See https://connect.microsoft.com/IE/feedback/details/1736512/
+ rnoInnerhtml = /
+
+
+
+
+ Advanced Connections — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Advanced Connections
+The following guide contains information specific to certain types of MongoDB configurations.
+For an example of connecting to a simple standalone server, see the Tutorial . To establish a connection with authentication options enabled, see the Authentication page.
+
+Connecting to a Replica Set
+Connecting to a replica set is much like connecting to a standalone MongoDB server. Simply specify the replica set name using the ?replicaSet=myreplset URI option.
+#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_client_t * client ;
+
+ mongoc_init ();
+
+ /* Create our MongoDB Client */
+ client = mongoc_client_new (
+ "mongodb://host01:27017,host02:27017,host03:27017/?replicaSet=myreplset" );
+
+ /* Do some work */
+ /* TODO */
+
+ /* Clean up */
+ mongoc_client_destroy ( client );
+ mongoc_cleanup ();
+
+ return 0 ;
+}
+
+
+
+
Tip
+
Multiple hostnames can be specified in the MongoDB connection string URI, with a comma separating hosts in the seed list.
+
It is recommended to use a seed list of members of the replica set to allow the driver to connect to any node.
+
+
+
+Connecting to a Sharded Cluster
+To connect to a sharded cluster , specify the mongos nodes the client should connect to. The C Driver will automatically detect that it has connected to a mongos sharding server.
+If more than one hostname is specified, a seed list will be created to attempt failover between the mongos instances.
+
+
Warning
+
Specifying the replicaSet parameter when connecting to a mongos sharding server is invalid.
+
+#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_client_t * client ;
+
+ mongoc_init ();
+
+ /* Create our MongoDB Client */
+ client = mongoc_client_new ( "mongodb://myshard01:27017/" );
+
+ /* Do something with client ... */
+
+ /* Free the client */
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return 0 ;
+}
+
+
+
+
+Connecting to an IPv6 Address
+The MongoDB C Driver will automatically resolve IPv6 addresses from host names. However, to specify an IPv6 address directly, wrap the address in [] .
+ mongoc_uri_t *uri = mongoc_uri_new ("mongodb://[::1]:27017");
+
+
+
+
+Connecting with IPv4 and IPv6
+If connecting to a hostname that has both IPv4 and IPv6 DNS records, the behavior follows RFC-6555 . A connection to the IPv6 address is attempted first. If IPv6 fails, then a connection is attempted to the IPv4 address. If the connection attempt to IPv6 does not complete within 250ms, then IPv4 is tried in parallel. Whichever succeeds connection first cancels the other. The successful DNS result is cached for 10 minutes.
+As a consequence, attempts to connect to a mongod only listening on IPv4 may be delayed if there are both A (IPv4) and AAAA (IPv6) DNS records associated with the host.
+To avoid a delay, configure hostnames to match the MongoDB configuration. That is, only create an A record if the mongod is only listening on IPv4.
+
+
+Connecting to a UNIX Domain Socket
+On UNIX-like systems, the C Driver can connect directly to a MongoDB server using a UNIX domain socket. Pass the URL-encoded path to the socket, which must be suffixed with .sock . For example, to connect to a domain socket at /tmp/mongodb-27017.sock :
+ mongoc_uri_t *uri = mongoc_uri_new ("mongodb://%2Ftmp%2Fmongodb-27017.sock");
+
+
+Include username and password like so:
+ mongoc_uri_t *uri = mongoc_uri_new ("mongodb://user:pass@%2Ftmp%2Fmongodb-27017.sock");
+
+
+
+
+Connecting to a server over TLS
+These are instructions for configuring TLS/SSL connections.
+To run a server locally (on port 27017, for example):
+ $ mongod --port 27017 --tlsMode requireTLS --tlsCertificateKeyFile server.pem --tlsCAFile ca.pem
+
+
+Add /?tls=true to the end of a client URI.
+ mongoc_client_t *client = NULL;
+client = mongoc_client_new ("mongodb://localhost:27017/?tls=true");
+
+
+MongoDB requires client certificates by default, unless the --tlsAllowConnectionsWithoutCertificates is provided. The C Driver can be configured to present a client certificate using the URI option tlsCertificateKeyFile , which may be referenced through the constant MONGOC_URI_TLSCERTIFICATEKEYFILE .
+ mongoc_client_t *client = NULL;
+mongoc_uri_t *uri = mongoc_uri_new ("mongodb://localhost:27017/?tls=true");
+mongoc_uri_set_option_as_utf8 (uri, MONGOC_URI_TLSCERTIFICATEKEYFILE, "client.pem");
+
+client = mongoc_client_new_from_uri (uri);
+
+
+The client certificate provided by tlsCertificateKeyFile must be issued by one of the server trusted Certificate Authorities listed in --tlsCAFile , or issued by a CA in the native certificate store on the server when omitted.
+See Configuring TLS for more information on the various TLS related options.
+
+
+Compressing data to and from MongoDB
+MongoDB 3.4 added Snappy compression support, zlib compression in 3.6, and zstd compression in 4.2.
+To enable compression support the client must be configured with which compressors to use:
+ mongoc_client_t *client = NULL;
+client = mongoc_client_new ("mongodb://localhost:27017/?compressors=snappy,zlib,zstd");
+
+
+The compressors option specifies the priority order of compressors the
+client wants to use. Messages are compressed if the client and server share any
+compressors in common.
+Note that the compressor used by the server might not be the same compressor as
+the client used. For example, if the client uses the connection string
+compressors=zlib,snappy the client will use zlib compression to send
+data (if possible), but the server might still reply using snappy ,
+depending on how the server was configured.
+The driver must be built with zlib and/or snappy and/or zstd support to enable compression
+support, any unknown (or not compiled in) compressor value will be ignored. Note: to build with zstd requires cmake 3.12 or higher.
+
+
+Additional Connection Options
+The full list of connection options can be found in the mongoc_uri_t docs.
+Certain socket/connection related options are not configurable:
+
+
+Option
+Description
+Value
+
+
+
+SO_KEEPALIVE
+TCP Keep Alive
+Enabled
+
+TCP_KEEPIDLE
+How long a connection needs to remain idle before TCP
+starts sending keepalive probes
+120 seconds
+
+TCP_KEEPINTVL
+The time in seconds between TCP probes
+10 seconds
+
+TCP_KEEPCNT
+How many probes to send, without acknowledgement,
+before dropping the connection
+9 probes
+
+TCP_NODELAY
+Send packets as soon as possible or buffer small
+packets (Nagle algorithm)
+Enabled (no buffering)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/aggregate.html b/libmongoc/1.23.4/aggregate.html
new file mode 100644
index 0000000000000000000000000000000000000000..944e3cebad74b04c52cd57b9235ab461b6ea256e
--- /dev/null
+++ b/libmongoc/1.23.4/aggregate.html
@@ -0,0 +1,332 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Aggregation Framework Examples — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Aggregation Framework Examples
+This document provides a number of practical examples that display the capabilities of the aggregation framework.
+The Aggregations using the Zip Codes Data Set examples uses a publicly available data set of all zipcodes and populations in the United States. These data are available at: zips.json .
+
+Requirements
+Let’s check if everything is installed.
+Use the following command to load zips.json data set into mongod instance:
+ $ mongoimport --drop -d test -c zipcodes zips.json
+
+
+Let’s use the MongoDB shell to verify that everything was imported successfully.
+ $ mongo test
+connecting to: test
+> db.zipcodes.count()
+29467
+> db.zipcodes.findOne()
+{
+ "_id" : "35004",
+ "city" : "ACMAR",
+ "loc" : [
+ -86.51557,
+ 33.584132
+ ],
+ "pop" : 6055,
+ "state" : "AL"
+}
+
+
+
+
+Aggregations using the Zip Codes Data Set
+Each document in this collection has the following form:
+{
+ "_id" : "35004" ,
+ "city" : "Acmar" ,
+ "state" : "AL" ,
+ "pop" : 6055 ,
+ "loc" : [ -86.51557 , 33.584132 ]
+}
+
+
+In these documents:
+
+The _id field holds the zipcode as a string.
+The city field holds the city name.
+The state field holds the two letter state abbreviation.
+The pop field holds the population.
+The loc field holds the location as a [latitude, longitude] array.
+
+
+
+States with Populations Over 10 Million
+To get all states with a population greater than 10 million, use the following aggregation pipeline:
+
+
aggregation1.c
+
#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+print_pipeline ( mongoc_collection_t * collection )
+{
+ mongoc_cursor_t * cursor ;
+ bson_error_t error ;
+ const bson_t * doc ;
+ bson_t * pipeline ;
+ char * str ;
+
+ pipeline = BCON_NEW ( "pipeline" ,
+ "[" ,
+ "{" ,
+ "$group" ,
+ "{" ,
+ "_id" ,
+ "$state" ,
+ "total_pop" ,
+ "{" ,
+ "$sum" ,
+ "$pop" ,
+ "}" ,
+ "}" ,
+ "}" ,
+ "{" ,
+ "$match" ,
+ "{" ,
+ "total_pop" ,
+ "{" ,
+ "$gte" ,
+ BCON_INT32 ( 10000000 ),
+ "}" ,
+ "}" ,
+ "}" ,
+ "]" );
+
+ cursor = mongoc_collection_aggregate (
+ collection , MONGOC_QUERY_NONE , pipeline , NULL , NULL );
+
+ while ( mongoc_cursor_next ( cursor , & doc )) {
+ str = bson_as_canonical_extended_json ( doc , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ }
+
+ if ( mongoc_cursor_error ( cursor , & error )) {
+ fprintf ( stderr , "Cursor Failure: %s \n " , error . message );
+ }
+
+ mongoc_cursor_destroy ( cursor );
+ bson_destroy ( pipeline );
+}
+
+int
+main ( void )
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ const char * uri_string =
+ "mongodb://localhost:27017/?appname=aggregation-example" ;
+ mongoc_uri_t * uri ;
+ bson_error_t error ;
+
+ mongoc_init ();
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+ collection = mongoc_client_get_collection ( client , "test" , "zipcodes" );
+
+ print_pipeline ( collection );
+
+ mongoc_uri_destroy ( uri );
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+You should see a result like the following:
+{ "_id" : "PA" , "total_pop" : 11881643 }
+{ "_id" : "OH" , "total_pop" : 10847115 }
+{ "_id" : "NY" , "total_pop" : 17990455 }
+{ "_id" : "FL" , "total_pop" : 12937284 }
+{ "_id" : "TX" , "total_pop" : 16986510 }
+{ "_id" : "IL" , "total_pop" : 11430472 }
+{ "_id" : "CA" , "total_pop" : 29760021 }
+
+
+The above aggregation pipeline is build from two pipeline operators: $group and $match .
+The $group pipeline operator requires _id field where we specify grouping; remaining fields specify how to generate composite value and must use one of the group aggregation functions: $addToSet , $first , $last , $max , $min , $avg , $push , $sum . The $match pipeline operator syntax is the same as the read operation query syntax.
+The $group process reads all documents and for each state it creates a separate document, for example:
+{ "_id" : "WA" , "total_pop" : 4866692 }
+
+
+The total_pop field uses the $sum aggregation function to sum the values of all pop fields in the source documents.
+Documents created by $group are piped to the $match pipeline operator. It returns the documents with the value of total_pop field greater than or equal to 10 million.
+
+
+Average City Population by State
+To get the first three states with the greatest average population per city, use the following aggregation:
+pipeline = BCON_NEW ( "pipeline" , "[" ,
+ "{" , "$group" , "{" , "_id" , "{" , "state" , "$state" , "city" , "$city" , "}" , "pop" , "{" , "$sum" , "$pop" , "}" , "}" , "}" ,
+ "{" , "$group" , "{" , "_id" , "$_id.state" , "avg_city_pop" , "{" , "$avg" , "$pop" , "}" , "}" , "}" ,
+ "{" , "$sort" , "{" , "avg_city_pop" , BCON_INT32 ( -1 ), "}" , "}" ,
+ "{" , "$limit" , BCON_INT32 ( 3 ) "}" ,
+"]" );
+
+
+This aggregate pipeline produces:
+{ "_id" : "DC" , "avg_city_pop" : 303450.0 }
+{ "_id" : "FL" , "avg_city_pop" : 27942.29805615551 }
+{ "_id" : "CA" , "avg_city_pop" : 27735.341099720412 }
+
+
+The above aggregation pipeline is build from three pipeline operators: $group , $sort and $limit .
+The first $group operator creates the following documents:
+{ "_id" : { "state" : "WY" , "city" : "Smoot" }, "pop" : 414 }
+
+
+Note, that the $group operator can’t use nested documents except the _id field.
+The second $group uses these documents to create the following documents:
+{ "_id" : "FL" , "avg_city_pop" : 27942.29805615551 }
+
+
+These documents are sorted by the avg_city_pop field in descending order. Finally, the $limit pipeline operator returns the first 3 documents from the sorted set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/api.html b/libmongoc/1.23.4/api.html
new file mode 100644
index 0000000000000000000000000000000000000000..760c5b40624a22b546d0c0521fabb33737e6ee72
--- /dev/null
+++ b/libmongoc/1.23.4/api.html
@@ -0,0 +1,243 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ API Reference — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/application-performance-monitoring.html b/libmongoc/1.23.4/application-performance-monitoring.html
new file mode 100644
index 0000000000000000000000000000000000000000..26ba05a218a99006c4a14e910a80dc8651208ece
--- /dev/null
+++ b/libmongoc/1.23.4/application-performance-monitoring.html
@@ -0,0 +1,706 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Application Performance Monitoring (APM) — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/authentication.html b/libmongoc/1.23.4/authentication.html
new file mode 100644
index 0000000000000000000000000000000000000000..a74245d352f6e9033e5460f781051c76a5f585dc
--- /dev/null
+++ b/libmongoc/1.23.4/authentication.html
@@ -0,0 +1,342 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Authentication — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Authentication
+This guide covers the use of authentication options with the MongoDB C Driver. Ensure that the MongoDB server is also properly configured for authentication before making a connection. For more information, see the MongoDB security documentation .
+The MongoDB C driver supports several authentication mechanisms through the use of MongoDB connection URIs.
+By default, if a username and password are provided as part of the connection string (and an optional authentication database), they are used to connect via the default authentication mechanism of the server.
+To select a specific authentication mechanism other than the default, see the list of supported mechanism below.
+ mongoc_client_t *client = mongoc_client_new ("mongodb://user:password@localhost/?authSource=mydb");
+
+
+Currently supported values for the authMechanism connection string option are:
+
+
+Basic Authentication (SCRAM-SHA-256)
+MongoDB 4.0 introduces support for authenticating using the SCRAM protocol
+with the more secure SHA-256 hash described in RFC 7677 . Using this authentication mechanism
+means that the password is never actually sent over the wire when
+authenticating, but rather a computed proof that the client password is the
+same as the password the server knows. In MongoDB 4.0, the C driver can
+determine the correct default authentication mechanism for users with stored
+SCRAM-SHA-1 and SCRAM-SHA-256 credentials:
+ mongoc_client_t *client = mongoc_client_new ("mongodb://user:password@localhost/?authSource=mydb");
+/* the correct authMechanism is negotiated between the driver and server. */
+
+
+Alternatively, SCRAM-SHA-256 can be explicitly specified as an authMechanism.
+ mongoc_client_t *client = mongoc_client_new ("mongodb://user:password@localhost/?authMechanism=SCRAM-SHA-256&authSource=mydb");
+
+
+Passwords for SCRAM-SHA-256 undergo the preprocessing step known as SASLPrep
+specified in RFC 4013 . SASLPrep will
+only be performed for passwords containing non-ASCII characters. SASLPrep
+requires libicu. If libicu is not available, attempting to authenticate over
+SCRAM-SHA-256 with non-ASCII passwords will result in error.
+Usernames never undergo SASLPrep.
+By default, when building the C driver libicu is linked if available. This can
+be changed with the ENABLE_ICU cmake option. To specify an installation
+path of libicu, specify ICU_ROOT as a cmake option. See the
+FindICU documentation
+for more information.
+
+
+Basic Authentication (SCRAM-SHA-1)
+The default authentication mechanism before MongoDB 4.0 is SCRAM-SHA-1 (RFC 5802 ). Using this authentication mechanism means that the password is never actually sent over the wire when authenticating, but rather a computed proof that the client password is the same as the password the server knows.
+ mongoc_client_t *client = mongoc_client_new ("mongodb://user:password@localhost/?authMechanism=SCRAM-SHA-1&authSource=mydb");
+
+
+
+
Note
+
SCRAM-SHA-1 authenticates against the admin database by default. If the user is created in another database, then specifying the authSource is required.
+
+
+
+Legacy Authentication (MONGODB-CR)
+The MONGODB-CR authMechanism is deprecated and will no longer function in MongoDB 4.0. Instead, specify no authMechanism and the driver
+will use an authentication mechanism compatible with your server.
+
+
+GSSAPI (Kerberos) Authentication
+
+
Note
+
On UNIX-like environments, Kerberos support requires compiling the driver against cyrus-sasl .
+
On Windows, Kerberos support requires compiling the driver against Windows Native SSPI or cyrus-sasl . The default configuration of the driver will use Windows Native SSPI.
+
To modify the default configuration, use the cmake option ENABLE_SASL .
+
+GSSAPI (Kerberos) authentication is available in the Enterprise Edition of MongoDB. To authenticate using GSSAPI , the MongoDB C driver must be installed with SASL support.
+On UNIX-like environments, run the kinit command before using the following authentication methods:
+ $ kinit mongodbuser@EXAMPLE.COM
+mongodbuser@EXAMPLE.COM's Password:
+$ klistCredentials cache: FILE:/tmp/krb5cc_1000
+ Principal: mongodbuser@EXAMPLE.COM
+
+ Issued Expires Principal
+Feb 9 13:48:51 2013 Feb 9 23:48:51 2013 krbtgt/EXAMPLE.COM@EXAMPLE.COM
+
+
+Now authenticate using the MongoDB URI. GSSAPI authenticates against the $external virtual database, so a database does not need to be specified in the URI. Note that the Kerberos principal must be URL-encoded:
+ mongoc_client_t *client;
+
+client = mongoc_client_new ("mongodb://mongodbuser%40EXAMPLE.COM@mongo-server.example.com/?authMechanism=GSSAPI");
+
+
+
+
Note
+
GSSAPI authenticates against the $external database, so specifying the authSource database is not required.
+
+The driver supports these GSSAPI properties:
+
+CANONICALIZE_HOST_NAME : This might be required with Cyrus-SASL when the hosts report different hostnames than what is used in the Kerberos database. The default is “false”.
+SERVICE_NAME : Use a different service name than the default, “mongodb”.
+
+Set properties in the URL:
+ mongoc_client_t *client;
+
+client = mongoc_client_new ("mongodb://mongodbuser%40EXAMPLE.COM@mongo-server.example.com/?authMechanism=GSSAPI&"
+ "authMechanismProperties=SERVICE_NAME:other,CANONICALIZE_HOST_NAME:true");
+
+
+If you encounter errors such as Invalid net address , check if the application is behind a NAT (Network Address Translation) firewall. If so, create a ticket that uses forwardable and addressless Kerberos tickets. This can be done by passing -f -A to kinit .
+ $ kinit -f -A mongodbuser@EXAMPLE.COM
+
+
+
+
+SASL Plain Authentication
+
+
Note
+
The MongoDB C Driver must be compiled with SASL support in order to use SASL PLAIN authentication.
+
+MongoDB Enterprise Edition supports the SASL PLAIN authentication mechanism, initially intended for delegating authentication to an LDAP server. Using the SASL PLAIN mechanism is very similar to the challenge response mechanism with usernames and passwords. This authentication mechanism uses the $external virtual database for LDAP support:
+
+
Note
+
SASL PLAIN is a clear-text authentication mechanism. It is strongly recommended to connect to MongoDB using TLS with certificate validation when using the PLAIN mechanism.
+
+ mongoc_client_t *client;
+
+client = mongoc_client_new ("mongodb://user:password@example.com/?authMechanism=PLAIN");
+
+
+PLAIN authenticates against the $external database, so specifying the authSource database is not required.
+
+
+X.509 Certificate Authentication
+
+
Note
+
The MongoDB C Driver must be compiled with TLS support for X.509 authentication support. Once this is done, start a server with the following options:
+
$ mongod --tlsMode requireTLS --tlsCertificateKeyFile server.pem --tlsCAFile ca.pem
+
+
+
+The MONGODB-X509 mechanism authenticates a username derived from the distinguished subject name of the X.509 certificate presented by the driver during TLS negotiation. This authentication method requires the use of TLS connections with certificate validation.
+ mongoc_client_t *client;
+mongoc_ssl_opt_t ssl_opts = { 0 };
+
+ssl_opts.pem_file = "mycert.pem";
+ssl_opts.pem_pwd = "mycertpassword";
+ssl_opts.ca_file = "myca.pem";
+ssl_opts.ca_dir = "trust_dir";
+ssl_opts.weak_cert_validation = false;
+
+client = mongoc_client_new ("mongodb://x509_derived_username@localhost/?authMechanism=MONGODB-X509");
+mongoc_client_set_ssl_opts (client, &ssl_opts);
+
+
+MONGODB-X509 authenticates against the $external database, so specifying the authSource database is not required. For more information on the x509_derived_username, see the MongoDB server x.509 tutorial .
+
+
Note
+
The MongoDB C Driver will attempt to determine the x509 derived username when none is provided, and as of MongoDB 3.4 providing the username is not required at all.
+
+
+
+Authentication via AWS IAM
+The MONGODB-AWS mechanism authenticates to MongoDB servers with credentials provided by AWS Identity and Access Management (IAM).
+To authenticate, create a user with an associated Amazon Resource Name (ARN) on the $external database, and specify the MONGODB-AWS authMechanism in the URI.
+mongoc_uri_t * uri = mongoc_uri_new ( "mongodb://localhost/?authMechanism=MONGODB-AWS" );
+
+
+Since MONGODB-AWS always authenticates against the $external database, so specifying the authSource database is not required.
+Credentials include the access key id , secret access key , and optional session token . They may be obtained from the following ways.
+
+AWS credentials via URI
+Credentials may be passed directly in the URI as username/password.
+mongoc_uri_t * uri = mongoc_uri_new ( "mongodb://<access key id>:<secret access key>localhost/?authMechanism=MONGODB-AWS" );
+
+
+This may include a session token passed with authMechanismProperties .
+mongoc_uri_t * uri = mongoc_uri_new ( "mongodb://<access key id>:<secret access key>localhost/?authMechanism=MONGODB-AWS&authMechanismProperties=AWS_SESSION_TOKEN:<token>" );
+
+
+
+
+AWS credentials via environment
+If credentials are not passed through the URI, libmongoc will check for the following environment variables.
+
+
+
+AWS Credentials via ECS
+If credentials are not passed in the URI or with environment variables, libmongoc will check if the environment variable AWS_CONTAINER_CREDENTIALS_RELATIVE_URI is set, and if so, attempt to retrieve temporary credentials from the ECS task metadata by querying a link local address.
+
+
+AWS Credentials via EC2
+If credentials are not passed in the URI or with environment variables, and the environment variable AWS_CONTAINER_CREDENTIALS_RELATIVE_URI is not set, libmongoc will attempt to retrieve temporary credentials from the EC2 machine metadata by querying link local addresses.
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/basic-troubleshooting.html b/libmongoc/1.23.4/basic-troubleshooting.html
new file mode 100644
index 0000000000000000000000000000000000000000..c76d7e28a41f429504a89bb4fddc067cf17ed8d6
--- /dev/null
+++ b/libmongoc/1.23.4/basic-troubleshooting.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Basic Troubleshooting — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Basic Troubleshooting
+
+Troubleshooting Checklist
+The following is a short list of things to check when you have a problem.
+
+Did you call mongoc_init() in main() ? If not, you will likely see a segfault.
+Have you leaked any clients or cursors as can be found with mongoc-stat <PID> ?
+Have packets been delivered to the server? See egress bytes from mongoc-stat <PID> .
+Does valgrind show any leaks? Ensure you call mongoc_cleanup() at the end of your process to cleanup lingering allocations from the MongoDB C driver.
+If compiling your own copy of MongoDB C Driver, consider using the cmake option -DENABLE_TRACING=ON to enable function tracing and hex dumps of network packets to STDERR and STDOUT .
+
+
+
+
+Submitting a Bug Report
+Think you’ve found a bug? Want to see a new feature in the MongoDB C driver? Please open a case in our issue management tool, JIRA:
+
+Bug reports in JIRA for all driver projects (i.e. CDRIVER, CSHARP, JAVA) and the Core Server (i.e. SERVER) project are public .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/bulk.html b/libmongoc/1.23.4/bulk.html
new file mode 100644
index 0000000000000000000000000000000000000000..a28520237eb1a52d1006ecc6d1f0b88eb4d309b5
--- /dev/null
+++ b/libmongoc/1.23.4/bulk.html
@@ -0,0 +1,989 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Bulk Write Operations — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Bulk Write Operations
+This tutorial explains how to take advantage of MongoDB C driver bulk write operation features. Executing write operations in batches reduces the number of network round trips, increasing write throughput.
+
+Bulk Insert
+First we need to fetch a bulk operation handle from the mongoc_collection_t .
+mongoc_bulk_operation_t * bulk =
+ mongoc_collection_create_bulk_operation_with_opts ( collection , NULL );
+
+
+We can now start inserting documents to the bulk operation. These will be buffered until we execute the operation.
+The bulk operation will coalesce insertions as a single batch for each consecutive call to mongoc_bulk_operation_insert() . This creates a pipelined effect when possible.
+To execute the bulk operation and receive the result we call mongoc_bulk_operation_execute() .
+
+
bulk1.c
+
#include <assert.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+bulk1 ( mongoc_collection_t * collection )
+{
+ mongoc_bulk_operation_t * bulk ;
+ bson_error_t error ;
+ bson_t * doc ;
+ bson_t reply ;
+ char * str ;
+ bool ret ;
+ int i ;
+
+ bulk = mongoc_collection_create_bulk_operation_with_opts ( collection , NULL );
+
+ for ( i = 0 ; i < 10000 ; i ++ ) {
+ doc = BCON_NEW ( "i" , BCON_INT32 ( i ));
+ mongoc_bulk_operation_insert ( bulk , doc );
+ bson_destroy ( doc );
+ }
+
+ ret = mongoc_bulk_operation_execute ( bulk , & reply , & error );
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+
+ if ( ! ret ) {
+ fprintf ( stderr , "Error: %s \n " , error . message );
+ }
+
+ bson_destroy ( & reply );
+ mongoc_bulk_operation_destroy ( bulk );
+}
+
+int
+main ( void )
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ const char * uri_string = "mongodb://localhost/?appname=bulk1-example" ;
+ mongoc_uri_t * uri ;
+ bson_error_t error ;
+
+ mongoc_init ();
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+ collection = mongoc_client_get_collection ( client , "test" , "test" );
+
+ bulk1 ( collection );
+
+ mongoc_uri_destroy ( uri );
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+Example reply document:
+ {"nInserted" : 10000,
+ "nMatched" : 0,
+ "nModified" : 0,
+ "nRemoved" : 0,
+ "nUpserted" : 0,
+ "writeErrors" : []
+ "writeConcernErrors" : [] }
+
+
+
+
+Mixed Bulk Write Operations
+MongoDB C driver also supports executing mixed bulk write operations. A batch of insert, update, and remove operations can be executed together using the bulk write operations API.
+
+
+Ordered Bulk Write Operations
+Ordered bulk write operations are batched and sent to the server in the order provided for serial execution. The reply document describes the type and count of operations performed.
+
+
bulk2.c
+
#include <assert.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+bulk2 ( mongoc_collection_t * collection )
+{
+ mongoc_bulk_operation_t * bulk ;
+ bson_error_t error ;
+ bson_t * query ;
+ bson_t * doc ;
+ bson_t * opts ;
+ bson_t reply ;
+ char * str ;
+ bool ret ;
+ int i ;
+
+ bulk = mongoc_collection_create_bulk_operation_with_opts ( collection , NULL );
+
+ /* Remove everything */
+ query = bson_new ();
+ mongoc_bulk_operation_remove ( bulk , query );
+ bson_destroy ( query );
+
+ /* Add a few documents */
+ for ( i = 1 ; i < 4 ; i ++ ) {
+ doc = BCON_NEW ( "_id" , BCON_INT32 ( i ));
+ mongoc_bulk_operation_insert ( bulk , doc );
+ bson_destroy ( doc );
+ }
+
+ /* {_id: 1} => {$set: {foo: "bar"}} */
+ query = BCON_NEW ( "_id" , BCON_INT32 ( 1 ));
+ doc = BCON_NEW ( "$set" , "{" , "foo" , BCON_UTF8 ( "bar" ), "}" );
+ mongoc_bulk_operation_update_many_with_opts ( bulk , query , doc , NULL , & error );
+ bson_destroy ( query );
+ bson_destroy ( doc );
+
+ /* {_id: 4} => {'$inc': {'j': 1}} (upsert) */
+ opts = BCON_NEW ( "upsert" , BCON_BOOL ( true ));
+ query = BCON_NEW ( "_id" , BCON_INT32 ( 4 ));
+ doc = BCON_NEW ( "$inc" , "{" , "j" , BCON_INT32 ( 1 ), "}" );
+ mongoc_bulk_operation_update_many_with_opts ( bulk , query , doc , opts , & error );
+ bson_destroy ( query );
+ bson_destroy ( doc );
+ bson_destroy ( opts );
+
+ /* replace {j:1} with {j:2} */
+ query = BCON_NEW ( "j" , BCON_INT32 ( 1 ));
+ doc = BCON_NEW ( "j" , BCON_INT32 ( 2 ));
+ mongoc_bulk_operation_replace_one_with_opts ( bulk , query , doc , NULL , & error );
+ bson_destroy ( query );
+ bson_destroy ( doc );
+
+ ret = mongoc_bulk_operation_execute ( bulk , & reply , & error );
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+
+ if ( ! ret ) {
+ printf ( "Error: %s \n " , error . message );
+ }
+
+ bson_destroy ( & reply );
+ mongoc_bulk_operation_destroy ( bulk );
+}
+
+int
+main ( void )
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ const char * uri_string = "mongodb://localhost/?appname=bulk2-example" ;
+ mongoc_uri_t * uri ;
+ bson_error_t error ;
+
+ mongoc_init ();
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+ collection = mongoc_client_get_collection ( client , "test" , "test" );
+
+ bulk2 ( collection );
+
+ mongoc_uri_destroy ( uri );
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+Example reply document:
+ { "nInserted" : 3,
+ "nMatched" : 2,
+ "nModified" : 2,
+ "nRemoved" : 10000,
+ "nUpserted" : 1,
+ "upserted" : [{"index" : 5, "_id" : 4}],
+ "writeErrors" : []
+ "writeConcernErrors" : [] }
+
+
+The index field in the upserted array is the 0-based index of the upsert operation; in this example, the sixth operation of the overall bulk operation was an upsert, so its index is 5.
+
+
+Unordered Bulk Write Operations
+Unordered bulk write operations are batched and sent to the server in arbitrary order where they may be executed in parallel. Any errors that occur are reported after all operations are attempted.
+In the next example the first and third operations fail due to the unique constraint on _id . Since we are doing unordered execution the second and fourth operations succeed.
+
+
bulk3.c
+
#include <assert.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+bulk3 ( mongoc_collection_t * collection )
+{
+ bson_t opts = BSON_INITIALIZER ;
+ mongoc_bulk_operation_t * bulk ;
+ bson_error_t error ;
+ bson_t * query ;
+ bson_t * doc ;
+ bson_t reply ;
+ char * str ;
+ bool ret ;
+
+ /* false indicates unordered */
+ BSON_APPEND_BOOL ( & opts , "ordered" , false );
+ bulk = mongoc_collection_create_bulk_operation_with_opts ( collection , & opts );
+ bson_destroy ( & opts );
+
+ /* Add a document */
+ doc = BCON_NEW ( "_id" , BCON_INT32 ( 1 ));
+ mongoc_bulk_operation_insert ( bulk , doc );
+ bson_destroy ( doc );
+
+ /* remove {_id: 2} */
+ query = BCON_NEW ( "_id" , BCON_INT32 ( 2 ));
+ mongoc_bulk_operation_remove_one ( bulk , query );
+ bson_destroy ( query );
+
+ /* insert {_id: 3} */
+ doc = BCON_NEW ( "_id" , BCON_INT32 ( 3 ));
+ mongoc_bulk_operation_insert ( bulk , doc );
+ bson_destroy ( doc );
+
+ /* replace {_id:4} {'i': 1} */
+ query = BCON_NEW ( "_id" , BCON_INT32 ( 4 ));
+ doc = BCON_NEW ( "i" , BCON_INT32 ( 1 ));
+ mongoc_bulk_operation_replace_one ( bulk , query , doc , false );
+ bson_destroy ( query );
+ bson_destroy ( doc );
+
+ ret = mongoc_bulk_operation_execute ( bulk , & reply , & error );
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+
+ if ( ! ret ) {
+ printf ( "Error: %s \n " , error . message );
+ }
+
+ bson_destroy ( & reply );
+ mongoc_bulk_operation_destroy ( bulk );
+ bson_destroy ( & opts );
+}
+
+int
+main ( void )
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ const char * uri_string = "mongodb://localhost/?appname=bulk3-example" ;
+ mongoc_uri_t * uri ;
+ bson_error_t error ;
+
+ mongoc_init ();
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+ collection = mongoc_client_get_collection ( client , "test" , "test" );
+
+ bulk3 ( collection );
+
+ mongoc_uri_destroy ( uri );
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+Example reply document:
+ { "nInserted" : 0,
+ "nMatched" : 1,
+ "nModified" : 1,
+ "nRemoved" : 1,
+ "nUpserted" : 0,
+ "writeErrors" : [
+ { "index" : 0,
+ "code" : 11000,
+ "errmsg" : "E11000 duplicate key error index: test.test.$_id_ dup key: { : 1 }" },
+ { "index" : 2,
+ "code" : 11000,
+ "errmsg" : "E11000 duplicate key error index: test.test.$_id_ dup key: { : 3 }" } ],
+ "writeConcernErrors" : [] }
+
+Error: E11000 duplicate key error index: test.test.$_id_ dup key: { : 1 }
+
+
+The bson_error_t domain is MONGOC_ERROR_COMMAND and its code is 11000.
+
+
+Bulk Operation Bypassing Document Validation
+This feature is only available when using MongoDB 3.2 and later.
+By default bulk operations are validated against the schema, if any is defined. In certain cases however it may be necessary to bypass the document validation.
+
+
bulk5.c
+
#include <assert.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+bulk5_fail ( mongoc_collection_t * collection )
+{
+ mongoc_bulk_operation_t * bulk ;
+ bson_error_t error ;
+ bson_t * doc ;
+ bson_t reply ;
+ char * str ;
+ bool ret ;
+
+ bulk = mongoc_collection_create_bulk_operation_with_opts ( collection , NULL );
+
+ /* Two inserts */
+ doc = BCON_NEW ( "_id" , BCON_INT32 ( 31 ));
+ mongoc_bulk_operation_insert ( bulk , doc );
+ bson_destroy ( doc );
+
+ doc = BCON_NEW ( "_id" , BCON_INT32 ( 32 ));
+ mongoc_bulk_operation_insert ( bulk , doc );
+ bson_destroy ( doc );
+
+ /* The above documents do not comply to the schema validation rules
+ * we created previously, so this will result in an error */
+ ret = mongoc_bulk_operation_execute ( bulk , & reply , & error );
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+
+ if ( ! ret ) {
+ printf ( "Error: %s \n " , error . message );
+ }
+
+ bson_destroy ( & reply );
+ mongoc_bulk_operation_destroy ( bulk );
+}
+
+static void
+bulk5_success ( mongoc_collection_t * collection )
+{
+ mongoc_bulk_operation_t * bulk ;
+ bson_error_t error ;
+ bson_t * doc ;
+ bson_t reply ;
+ char * str ;
+ bool ret ;
+
+ bulk = mongoc_collection_create_bulk_operation_with_opts ( collection , NULL );
+
+ /* Allow this document to bypass document validation.
+ * NOTE: When authentication is enabled, the authenticated user must have
+ * either the "dbadmin" or "restore" roles to bypass document validation */
+ mongoc_bulk_operation_set_bypass_document_validation ( bulk , true );
+
+ /* Two inserts */
+ doc = BCON_NEW ( "_id" , BCON_INT32 ( 31 ));
+ mongoc_bulk_operation_insert ( bulk , doc );
+ bson_destroy ( doc );
+
+ doc = BCON_NEW ( "_id" , BCON_INT32 ( 32 ));
+ mongoc_bulk_operation_insert ( bulk , doc );
+ bson_destroy ( doc );
+
+ ret = mongoc_bulk_operation_execute ( bulk , & reply , & error );
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+
+ if ( ! ret ) {
+ printf ( "Error: %s \n " , error . message );
+ }
+
+ bson_destroy ( & reply );
+ mongoc_bulk_operation_destroy ( bulk );
+}
+
+int
+main ( void )
+{
+ bson_t * options ;
+ bson_error_t error ;
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ mongoc_database_t * database ;
+ const char * uri_string = "mongodb://localhost/?appname=bulk5-example" ;
+ mongoc_uri_t * uri ;
+
+ mongoc_init ();
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+ database = mongoc_client_get_database ( client , "testasdf" );
+
+ /* Create schema validator */
+ options = BCON_NEW (
+ "validator" , "{" , "number" , "{" , "$gte" , BCON_INT32 ( 5 ), "}" , "}" );
+ collection =
+ mongoc_database_create_collection ( database , "collname" , options , & error );
+
+ if ( collection ) {
+ bulk5_fail ( collection );
+ bulk5_success ( collection );
+ mongoc_collection_destroy ( collection );
+ } else {
+ fprintf ( stderr , "Couldn't create collection: '%s' \n " , error . message );
+ }
+
+ bson_free ( options );
+ mongoc_uri_destroy ( uri );
+ mongoc_database_destroy ( database );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+Running the above example will result in:
+ { "nInserted" : 0,
+ "nMatched" : 0,
+ "nModified" : 0,
+ "nRemoved" : 0,
+ "nUpserted" : 0,
+ "writeErrors" : [
+ { "index" : 0,
+ "code" : 121,
+ "errmsg" : "Document failed validation" } ] }
+
+Error: Document failed validation
+
+{ "nInserted" : 2,
+ "nMatched" : 0,
+ "nModified" : 0,
+ "nRemoved" : 0,
+ "nUpserted" : 0,
+ "writeErrors" : [] }
+
+
+The bson_error_t domain is MONGOC_ERROR_COMMAND .
+
+
+Bulk Operation Write Concerns
+By default bulk operations are executed with the write_concern of the collection they are executed against. A custom write concern can be passed to the mongoc_collection_create_bulk_operation_with_opts() method. Write concern errors (e.g. wtimeout) will be reported after all operations are attempted, regardless of execution order.
+
+
bulk4.c
+
#include <assert.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+bulk4 ( mongoc_collection_t * collection )
+{
+ bson_t opts = BSON_INITIALIZER ;
+ mongoc_write_concern_t * wc ;
+ mongoc_bulk_operation_t * bulk ;
+ bson_error_t error ;
+ bson_t * doc ;
+ bson_t reply ;
+ char * str ;
+ bool ret ;
+
+ wc = mongoc_write_concern_new ();
+ mongoc_write_concern_set_w ( wc , 4 );
+ mongoc_write_concern_set_wtimeout_int64 ( wc , 100 ); /* milliseconds */
+ mongoc_write_concern_append ( wc , & opts );
+
+ bulk = mongoc_collection_create_bulk_operation_with_opts ( collection , & opts );
+
+ /* Two inserts */
+ doc = BCON_NEW ( "_id" , BCON_INT32 ( 10 ));
+ mongoc_bulk_operation_insert ( bulk , doc );
+ bson_destroy ( doc );
+
+ doc = BCON_NEW ( "_id" , BCON_INT32 ( 11 ));
+ mongoc_bulk_operation_insert ( bulk , doc );
+ bson_destroy ( doc );
+
+ ret = mongoc_bulk_operation_execute ( bulk , & reply , & error );
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+
+ if ( ! ret ) {
+ printf ( "Error: %s \n " , error . message );
+ }
+
+ bson_destroy ( & reply );
+ mongoc_bulk_operation_destroy ( bulk );
+ mongoc_write_concern_destroy ( wc );
+ bson_destroy ( & opts );
+}
+
+int
+main ( void )
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ const char * uri_string = "mongodb://localhost/?appname=bulk4-example" ;
+ mongoc_uri_t * uri ;
+ bson_error_t error ;
+
+ mongoc_init ();
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+ collection = mongoc_client_get_collection ( client , "test" , "test" );
+
+ bulk4 ( collection );
+
+ mongoc_uri_destroy ( uri );
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+Example reply document and error message:
+ { "nInserted" : 2,
+ "nMatched" : 0,
+ "nModified" : 0,
+ "nRemoved" : 0,
+ "nUpserted" : 0,
+ "writeErrors" : [],
+ "writeConcernErrors" : [
+ { "code" : 64,
+ "errmsg" : "waiting for replication timed out" }
+] }
+
+Error: waiting for replication timed out
+
+
+The bson_error_t domain is MONGOC_ERROR_WRITE_CONCERN if there are write concern errors and no write errors. Write errors indicate failed operations, so they take precedence over write concern errors, which mean merely that the write concern is not satisfied yet .
+
+
+Setting Collation Order
+This feature is only available when using MongoDB 3.4 and later.
+
+
bulk-collation.c
+
#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+bulk_collation ( mongoc_collection_t * collection )
+{
+ mongoc_bulk_operation_t * bulk ;
+ bson_t * opts ;
+ bson_t * doc ;
+ bson_t * selector ;
+ bson_t * update ;
+ bson_error_t error ;
+ bson_t reply ;
+ char * str ;
+ uint32_t ret ;
+
+ /* insert {_id: "one"} and {_id: "One"} */
+ bulk = mongoc_collection_create_bulk_operation_with_opts ( collection , NULL );
+ doc = BCON_NEW ( "_id" , BCON_UTF8 ( "one" ));
+ mongoc_bulk_operation_insert ( bulk , doc );
+ bson_destroy ( doc );
+
+ doc = BCON_NEW ( "_id" , BCON_UTF8 ( "One" ));
+ mongoc_bulk_operation_insert ( bulk , doc );
+ bson_destroy ( doc );
+
+ /* "One" normally sorts before "one"; make "one" come first */
+ opts = BCON_NEW ( "collation" ,
+ "{" ,
+ "locale" ,
+ BCON_UTF8 ( "en_US" ),
+ "caseFirst" ,
+ BCON_UTF8 ( "lower" ),
+ "}" );
+
+ /* set x=1 on the document with _id "One", which now sorts after "one" */
+ update = BCON_NEW ( "$set" , "{" , "x" , BCON_INT64 ( 1 ), "}" );
+ selector = BCON_NEW ( "_id" , "{" , "$gt" , BCON_UTF8 ( "one" ), "}" );
+ mongoc_bulk_operation_update_one_with_opts (
+ bulk , selector , update , opts , & error );
+
+ ret = mongoc_bulk_operation_execute ( bulk , & reply , & error );
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+
+ if ( ! ret ) {
+ printf ( "Error: %s \n " , error . message );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( update );
+ bson_destroy ( selector );
+ bson_destroy ( opts );
+ mongoc_bulk_operation_destroy ( bulk );
+}
+
+int
+main ( void )
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ const char * uri_string = "mongodb://localhost/?appname=bulk-collation" ;
+ mongoc_uri_t * uri ;
+ bson_error_t error ;
+
+ mongoc_init ();
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+ collection = mongoc_client_get_collection ( client , "db" , "collection" );
+ bulk_collation ( collection );
+
+ mongoc_uri_destroy ( uri );
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+Running the above example will result in:
+ { "nInserted" : 2,
+ "nMatched" : 1,
+ "nModified" : 1,
+ "nRemoved" : 0,
+ "nUpserted" : 0,
+ "writeErrors" : [ ]
+}
+
+
+
+
+Unacknowledged Bulk Writes
+Set “w” to zero for an unacknowledged write. The driver sends unacknowledged writes using the legacy opcodes OP_INSERT , OP_UPDATE , and OP_DELETE .
+
+
bulk6.c
+
#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+bulk6 ( mongoc_collection_t * collection )
+{
+ bson_t opts = BSON_INITIALIZER ;
+ mongoc_write_concern_t * wc ;
+ mongoc_bulk_operation_t * bulk ;
+ bson_error_t error ;
+ bson_t * doc ;
+ bson_t * selector ;
+ bson_t reply ;
+ char * str ;
+ bool ret ;
+
+ wc = mongoc_write_concern_new ();
+ mongoc_write_concern_set_w ( wc , 0 );
+ mongoc_write_concern_append ( wc , & opts );
+
+ bulk = mongoc_collection_create_bulk_operation_with_opts ( collection , & opts );
+
+ doc = BCON_NEW ( "_id" , BCON_INT32 ( 10 ));
+ mongoc_bulk_operation_insert ( bulk , doc );
+ bson_destroy ( doc );
+
+ selector = BCON_NEW ( "_id" , BCON_INT32 ( 11 ));
+ mongoc_bulk_operation_remove_one ( bulk , selector );
+ bson_destroy ( selector );
+
+ ret = mongoc_bulk_operation_execute ( bulk , & reply , & error );
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+
+ if ( ! ret ) {
+ printf ( "Error: %s \n " , error . message );
+ }
+
+ bson_destroy ( & reply );
+ mongoc_bulk_operation_destroy ( bulk );
+ mongoc_write_concern_destroy ( wc );
+ bson_destroy ( & opts );
+}
+
+int
+main ( void )
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ const char * uri_string = "mongodb://localhost/?appname=bulk6-example" ;
+ mongoc_uri_t * uri ;
+ bson_error_t error ;
+
+ mongoc_init ();
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+ collection = mongoc_client_get_collection ( client , "test" , "test" );
+
+ bulk6 ( collection );
+
+ mongoc_uri_destroy ( uri );
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+The reply document is empty:
+
+
+
+Further Reading
+See the Driver Bulk API Spec , which describes bulk write operations for all MongoDB drivers.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/configuring_tls.html b/libmongoc/1.23.4/configuring_tls.html
new file mode 100644
index 0000000000000000000000000000000000000000..062f30438360c488571c7d3ac01ee509c92777e3
--- /dev/null
+++ b/libmongoc/1.23.4/configuring_tls.html
@@ -0,0 +1,247 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Configuring TLS — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Configuring TLS
+
+Configuration with URI options
+Enable TLS by including tls=true in the URI.
+mongoc_uri_t * uri = mongoc_uri_new ( "mongodb://localhost:27017/" );
+mongoc_uri_set_option_as_bool ( uri , MONGOC_URI_TLS , true );
+
+mongoc_client_t * client = mongoc_client_new_from_uri ( uri );
+
+
+The following URI options may be used to further configure TLS:
+
+
+Constant
+Key
+Description
+
+
+
+MONGOC_URI_TLS
+tls
+{true|false}, indicating if TLS must be used.
+
+MONGOC_URI_TLSCERTIFICATEKEYFILE
+tlscertificatekeyfile
+Path to PEM formatted Private Key, with its Public Certificate concatenated at the end.
+
+MONGOC_URI_TLSCERTIFICATEKEYFILEPASSWORD
+tlscertificatekeypassword
+The password, if any, to use to unlock encrypted Private Key.
+
+MONGOC_URI_TLSCAFILE
+tlscafile
+One, or a bundle of, Certificate Authorities whom should be considered to be trusted.
+
+MONGOC_URI_TLSALLOWINVALIDCERTIFICATES
+tlsallowinvalidcertificates
+Accept and ignore certificate verification errors (e.g. untrusted issuer, expired, etc.)
+
+MONGOC_URI_TLSALLOWINVALIDHOSTNAMES
+tlsallowinvalidhostnames
+Ignore hostname verification of the certificate (e.g. Man In The Middle, using valid certificate, but issued for another hostname)
+
+MONGOC_URI_TLSINSECURE
+tlsinsecure
+{true|false}, indicating if insecure TLS options should be used. Currently this implies MONGOC_URI_TLSALLOWINVALIDCERTIFICATES and MONGOC_URI_TLSALLOWINVALIDHOSTNAMES.
+
+MONGOC_URI_TLSDISABLECERTIFICATEREVOCATIONCHECK
+tlsdisablecertificaterevocationcheck
+{true|false}, indicates if revocation checking (CRL / OCSP) should be disabled.
+
+MONGOC_URI_TLSDISABLEOCSPENDPOINTCHECK
+tlsdisableocspendpointcheck
+{true|false}, indicates if OCSP responder endpoints should not be requested when an OCSP response is not stapled.
+
+
+
+
+
+Configuration with mongoc_ssl_opt_t
+Alternatively, the mongoc_ssl_opt_t struct may be used to configure TLS with mongoc_client_set_ssl_opts() or mongoc_client_pool_set_ssl_opts() . Most of the configurable options can be set using the Connection String URI .
+
+
+mongoc_ssl_opt_t key
+URI key
+
+
+
+pem_file
+tlsClientCertificateKeyFile
+
+pem_pwd
+tlsClientCertificateKeyPassword
+
+ca_file
+tlsCAFile
+
+weak_cert_validation
+tlsAllowInvalidCertificates
+
+allow_invalid_hostname
+tlsAllowInvalidHostnames
+
+
+
+The only exclusions are crl_file and ca_dir . Those may only be set with mongoc_ssl_opt_t .
+
+
+Client Authentication
+When MongoDB is started with TLS enabled, it will by default require the client to provide a client certificate issued by a certificate authority specified by --tlsCAFile , or an authority trusted by the native certificate store in use on the server.
+To provide the client certificate, set the tlsCertificateKeyFile in the URI to a PEM armored certificate file.
+mongoc_uri_t * uri = mongoc_uri_new ( "mongodb://localhost:27017/" );
+mongoc_uri_set_option_as_bool ( uri , MONGOC_URI_TLS , true );
+mongoc_uri_set_option_as_utf8 ( uri , MONGOC_URI_TLSCERTIFICATEKEYFILE , "/path/to/client-certificate.pem" );
+
+mongoc_client_t * client = mongoc_client_new_from_uri ( uri );
+
+
+
+
+Server Certificate Verification
+The MongoDB C Driver will automatically verify the validity of the server certificate, such as issued by configured Certificate Authority, hostname validation, and expiration.
+To overwrite this behavior, it is possible to disable hostname validation, OCSP endpoint revocation checking, revocation checking entirely, and allow invalid certificates.
+This behavior is controlled using the tlsAllowInvalidHostnames , tlsDisableOCSPEndpointCheck , tlsDisableCertificateRevocationCheck , and tlsAllowInvalidCertificates options respectively. By default, all are set to false .
+It is not recommended to change these defaults as it exposes the client to Man In The Middle attacks (when tlsAllowInvalidHostnames is set), invalid certificates (when tlsAllowInvalidCertificates is set), or potentially revoked certificates (when tlsDisableOCSPEndpointCheck or tlsDisableCertificateRevocationCheck are set).
+
+
+Supported Libraries
+By default, libmongoc will attempt to find a supported TLS library and enable TLS support. This is controlled by the cmake flag ENABLE_SSL , which is set to AUTO by default. Valid values are:
+
+AUTO the default behavior. Link to the system’s native TLS library, or attempt to find OpenSSL.
+DARWIN link to Secure Transport, the native TLS library on macOS.
+WINDOWS link to Secure Channel, the native TLS library on Windows.
+OPENSSL link to OpenSSL (libssl). An optional install path may be specified with OPENSSL_ROOT .
+LIBRESSL link to LibreSSL’s libtls. (LibreSSL’s compatible libssl may be linked to by setting OPENSSL ).
+OFF disable TLS support.
+
+
+OpenSSL
+The MongoDB C Driver uses OpenSSL, if available, on Linux and Unix platforms (besides macOS). Industry best practices and some regulations require the use of TLS 1.1 or newer, which requires at least OpenSSL 1.0.1. Check your OpenSSL version like so:
+
+Ensure your system’s OpenSSL is a recent version (at least 1.0.1), or install a recent version in a non-system path and build against it with:
+cmake - DOPENSSL_ROOT_DIR =/ absolute / path / to / openssl
+
+
+When compiled against OpenSSL, the driver will attempt to load the system default certificate store, as configured by the distribution. That can be overridden by setting the tlsCAFile URI option or with the fields ca_file and ca_dir in the mongoc_ssl_opt_t .
+The Online Certificate Status Protocol (OCSP) (see RFC 6960 ) is fully supported when using OpenSSL 1.0.1+ with the following notes:
+
+
+
+LibreSSL / libtls
+The MongoDB C Driver supports LibreSSL through the use of OpenSSL compatibility checks when configured to compile against openssl . It also supports the new libtls library when configured to build against libressl .
+When compiled against the Windows native libraries, the crl_file option of a mongoc_ssl_opt_t is not supported, and will issue an error if used.
+Setting tlsDisableOCSPEndpointCheck and tlsDisableCertificateRevocationCheck has no effect.
+The Online Certificate Status Protocol (OCSP) (see RFC 6960 ) is partially supported with the following notes:
+
+The Must-Staple extension (see RFC 7633 ) is ignored. Connection may continue if a Must-Staple certificate is presented with no stapled response (unless the client receives a revoked response from an OCSP responder).
+Connection will continue if a Must-Staple certificate is presented without a stapled response and the OCSP responder is down.
+
+
+
+Native TLS Support on Windows (Secure Channel)
+The MongoDB C Driver supports the Windows native TLS library (Secure Channel, or SChannel), and its native crypto library (Cryptography API: Next Generation, or CNG).
+When compiled against the Windows native libraries, the ca_dir option of a mongoc_ssl_opt_t is not supported, and will issue an error if used.
+Encrypted PEM files (e.g., setting tlsCertificateKeyPassword ) are also not supported, and will result in error when attempting to load them.
+When tlsCAFile is set, the driver will only allow server certificates issued by the authority (or authorities) provided. When no tlsCAFile is set, the driver will look up the Certificate Authority using the System Local Machine Root certificate store to confirm the provided certificate.
+When crl_file is set with mongoc_ssl_opt_t , the driver will import the revocation list to the System Local Machine Root certificate store.
+Setting tlsDisableOCSPEndpointCheck has no effect.
+The Online Certificate Status Protocol (OCSP) (see RFC 6960 ) is partially supported with the following notes:
+
+The Must-Staple extension (see RFC 7633 ) is ignored. Connection may continue if a Must-Staple certificate is presented with no stapled response (unless the client receives a revoked response from an OCSP responder).
+When a crl_file is set with mongoc_ssl_opt_t , and the crl_file revokes the server’s certificate, the OCSP response takes precedence. E.g. if the server presents a certificate with a valid stapled OCSP response, the certificate is considered valid even if the crl_file marks it as revoked.
+Connection will continue if a Must-Staple certificate is presented without a stapled response and the OCSP responder is down.
+
+
+
+Native TLS Support on macOS / Darwin (Secure Transport)
+The MongoDB C Driver supports the Darwin (OS X, macOS, iOS, etc.) native TLS library (Secure Transport), and its native crypto library (Common Crypto, or CC).
+When compiled against Secure Transport, the ca_dir and crl_file options of a mongoc_ssl_opt_t are not supported. An error is issued if either are used.
+When tlsCAFile is set, the driver will only allow server certificates issued by the authority (or authorities) provided. When no tlsCAFile is set, the driver will use the Certificate Authorities in the currently unlocked keychains.
+Setting tlsDisableOCSPEndpointCheck and tlsDisableCertificateRevocationCheck has no effect.
+The Online Certificate Status Protocol (OCSP) (see RFC 6960 ) is partially supported with the following notes.
+
+The Must-Staple extension (see RFC 7633 ) is ignored. Connection may continue if a Must-Staple certificate is presented with no stapled response (unless the client receives a revoked response from an OCSP responder).
+Connection will continue if a Must-Staple certificate is presented without a stapled response and the OCSP responder is down.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/connection-pooling.html b/libmongoc/1.23.4/connection-pooling.html
new file mode 100644
index 0000000000000000000000000000000000000000..d5902a1899a772d4830dda54995c9b8f9893fbd8
--- /dev/null
+++ b/libmongoc/1.23.4/connection-pooling.html
@@ -0,0 +1,184 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Connection Pooling — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Connection Pooling
+The MongoDB C driver has two connection modes: single-threaded and pooled. Single-threaded mode is optimized for embedding the driver within languages like PHP. Multi-threaded programs should use pooled mode: this mode minimizes the total connection count, and in pooled mode background threads monitor the MongoDB server topology, so the program need not block to scan it.
+
+Single Mode
+In single mode, your program creates a mongoc_client_t directly:
+mongoc_client_t * client = mongoc_client_new (
+ "mongodb://hostA,hostB/?replicaSet=my_rs" );
+
+
+The client connects on demand when your program first uses it for a MongoDB operation. Using a non-blocking socket per server, it begins a check on each server concurrently, and uses the asynchronous poll or select function to receive events from the sockets, until all have responded or timed out. Put another way, in single-threaded mode the C Driver fans out to begin all checks concurrently, then fans in once all checks have completed or timed out. Once the scan completes, the client executes your program’s operation and returns.
+In single mode, the client re-scans the server topology roughly once per minute. If more than a minute has elapsed since the previous scan, the next operation on the client will block while the client completes its scan. This interval is configurable with heartbeatFrequencyMS in the connection string. (See mongoc_uri_t .)
+A single client opens one connection per server in your topology: these connections are used both for scanning the topology and performing normal operations.
+
+
+Pooled Mode
+To activate pooled mode, create a mongoc_client_pool_t :
+mongoc_uri_t * uri = mongoc_uri_new (
+ "mongodb://hostA,hostB/?replicaSet=my_rs" );
+
+mongoc_client_pool_t * pool = mongoc_client_pool_new ( uri );
+
+
+When your program first calls mongoc_client_pool_pop() , the pool launches monitoring threads in the background. Monitoring threads independently connect to all servers in the connection string. As monitoring threads receive hello responses from the servers, they update the shared view of the server topology. Additional monitoring threads and connections are created as new servers are discovered. Monitoring threads are terminated when servers are removed from the shared view of the server topology.
+Each thread that executes MongoDB operations must check out a client from the pool:
+mongoc_client_t * client = mongoc_client_pool_pop ( pool );
+
+/* use the client for operations ... */
+
+mongoc_client_pool_push ( pool , client );
+
+
+The mongoc_client_t object is not thread-safe, only the mongoc_client_pool_t is.
+When the driver is in pooled mode, your program’s operations are unblocked as soon as monitoring discovers a usable server. For example, if a thread in your program is waiting to execute an “insert” on the primary, it is unblocked as soon as the primary is discovered, rather than waiting for all secondaries to be checked as well.
+The pool opens one connection per server for monitoring, and each client opens its own connection to each server it uses for application operations. Background monitoring threads re-scan servers independently roughly every 10 seconds. This interval is configurable with heartbeatFrequencyMS in the connection string. (See mongoc_uri_t .)
+The connection string can also specify waitQueueTimeoutMS to limit the time that mongoc_client_pool_pop() will wait for a client from the pool. (See mongoc_uri_t .) If waitQueueTimeoutMS is specified, then it is necessary to confirm that a client was actually returned:
+mongoc_uri_t * uri = mongoc_uri_new (
+ "mongodb://hostA,hostB/?replicaSet=my_rs&waitQueueTimeoutMS=1000" );
+
+mongoc_client_pool_t * pool = mongoc_client_pool_new ( uri );
+
+mongoc_client_t * client = mongoc_client_pool_pop ( pool );
+
+if ( client ) {
+ /* use the client for operations ... */
+
+ mongoc_client_pool_push ( pool , client );
+} else {
+ /* take appropriate action for a timeout */
+}
+
+
+See Connection Pool Options to configure pool size and behavior, and see mongoc_client_pool_t for an extended example of a multi-threaded program that uses the driver in pooled mode.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/create-indexes.html b/libmongoc/1.23.4/create-indexes.html
new file mode 100644
index 0000000000000000000000000000000000000000..9ae6164004e1ffb79990eb43920f348febb8ecf7
--- /dev/null
+++ b/libmongoc/1.23.4/create-indexes.html
@@ -0,0 +1,244 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Creating Indexes — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Creating Indexes
+To create indexes on a MongoDB collection, execute the createIndexes command
+with a command function like mongoc_database_write_command_with_opts() or
+mongoc_collection_write_command_with_opts() . See the MongoDB
+Manual entry for the createIndexes command for details.
+
+
Warning
+
The commitQuorum option to the createIndexes command is only
+supported in MongoDB 4.4+ servers, but it is not validated in the command
+functions. Do not pass commitQuorum if connected to server versions less
+than 4.4. Using the commitQuorum option on server versions less than 4.4
+may have adverse effects on index builds.
+
+
+Example
+
+
example-create-indexes.c
+
/* gcc example-create-indexes.c -o example-create-indexes $(pkg-config --cflags
+ * --libs libmongoc-1.0) */
+
+/* ./example-create-indexes [CONNECTION_STRING [COLLECTION_NAME]] */
+
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_client_t * client ;
+ const char * uri_string =
+ "mongodb://127.0.0.1/?appname=create-indexes-example" ;
+ mongoc_uri_t * uri ;
+ mongoc_database_t * db ;
+ const char * collection_name = "test" ;
+ bson_t keys ;
+ char * index_name ;
+ bson_t * create_indexes ;
+ bson_t reply ;
+ char * reply_str ;
+ bson_error_t error ;
+ bool r ;
+
+ mongoc_init ();
+
+ if ( argc > 1 ) {
+ uri_string = argv [ 1 ];
+ }
+
+ if ( argc > 2 ) {
+ collection_name = argv [ 2 ];
+ }
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+ db = mongoc_client_get_database ( client , "test" );
+
+ /* ascending index on field "x" */
+ bson_init ( & keys );
+ BSON_APPEND_INT32 ( & keys , "x" , 1 );
+ index_name = mongoc_collection_keys_to_index_string ( & keys );
+ create_indexes = BCON_NEW ( "createIndexes" ,
+ BCON_UTF8 ( collection_name ),
+ "indexes" ,
+ "[" ,
+ "{" ,
+ "key" ,
+ BCON_DOCUMENT ( & keys ),
+ "name" ,
+ BCON_UTF8 ( index_name ),
+ "}" ,
+ "]" );
+
+ r = mongoc_database_write_command_with_opts (
+ db , create_indexes , NULL /* opts */ , & reply , & error );
+
+ reply_str = bson_as_json ( & reply , NULL );
+ printf ( "%s \n " , reply_str );
+
+ if ( ! r ) {
+ fprintf ( stderr , "Error in createIndexes: %s \n " , error . message );
+ }
+
+ bson_free ( index_name );
+ bson_free ( reply_str );
+ bson_destroy ( & reply );
+ bson_destroy ( create_indexes );
+ mongoc_database_destroy ( db );
+ mongoc_uri_destroy ( uri );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return r ? EXIT_SUCCESS : EXIT_FAILURE ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/cursors.html b/libmongoc/1.23.4/cursors.html
new file mode 100644
index 0000000000000000000000000000000000000000..895b53621df91ca331475d1b8bbceddb5bd86ee0
--- /dev/null
+++ b/libmongoc/1.23.4/cursors.html
@@ -0,0 +1,339 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cursors — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Cursors
+
+Handling Cursor Failures
+Cursors exist on a MongoDB server. However, the mongoc_cursor_t structure gives the local process a handle to the cursor. It is possible for errors to occur on the server while iterating a cursor on the client. Even a network partition may occur. This means that applications should be robust in handling cursor failures.
+While iterating cursors, you should check to see if an error has occurred. See the following example for how to robustly check for errors.
+static void
+print_all_documents ( mongoc_collection_t * collection )
+{
+ mongoc_cursor_t * cursor ;
+ const bson_t * doc ;
+ bson_error_t error ;
+ bson_t query = BSON_INITIALIZER ;
+ char * str ;
+
+ cursor = mongoc_collection_find_with_opts ( collection , query , NULL , NULL );
+
+ while ( mongoc_cursor_next ( cursor , & doc )) {
+ str = bson_as_canonical_extended_json ( doc , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ }
+
+ if ( mongoc_cursor_error ( cursor , & error )) {
+ fprintf ( stderr , "Failed to iterate all documents: %s \n " , error . message );
+ }
+
+ mongoc_cursor_destroy ( cursor );
+}
+
+
+
+
+Destroying Server-Side Cursors
+The MongoDB C driver will automatically destroy a server-side cursor when mongoc_cursor_destroy() is called. Failure to call this function when done with a cursor will leak memory client side as well as consume extra memory server side. If the cursor was configured to never timeout, it will become a memory leak on the server.
+
+
+Tailable Cursors
+Tailable cursors are cursors that remain open even after they’ve returned a final result. This way, if more documents are added to a collection (i.e., to the cursor’s result set), then you can continue to call mongoc_cursor_next() to retrieve those additional results.
+Here’s a complete test case that demonstrates the use of tailable cursors.
+
+
Note
+
Tailable cursors are for capped collections only.
+
+An example to tail the oplog from a replica set.
+
+
mongoc-tail.c
+
#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+#ifdef _WIN32
+#define sleep(_n) Sleep ((_n) *1000)
+#endif
+
+
+static void
+print_bson ( const bson_t * b )
+{
+ char * str ;
+
+ str = bson_as_canonical_extended_json ( b , NULL );
+ fprintf ( stdout , "%s \n " , str );
+ bson_free ( str );
+}
+
+
+static mongoc_cursor_t *
+query_collection ( mongoc_collection_t * collection , uint32_t last_time )
+{
+ mongoc_cursor_t * cursor ;
+ bson_t query ;
+ bson_t gt ;
+ bson_t opts ;
+
+ BSON_ASSERT ( collection );
+
+ bson_init ( & query );
+ BSON_APPEND_DOCUMENT_BEGIN ( & query , "ts" , & gt );
+ BSON_APPEND_TIMESTAMP ( & gt , "$gt" , last_time , 0 );
+ bson_append_document_end ( & query , & gt );
+
+ bson_init ( & opts );
+ BSON_APPEND_BOOL ( & opts , "tailable" , true );
+ BSON_APPEND_BOOL ( & opts , "awaitData" , true );
+
+ cursor = mongoc_collection_find_with_opts ( collection , & query , & opts , NULL );
+
+ bson_destroy ( & query );
+ bson_destroy ( & opts );
+
+ return cursor ;
+}
+
+
+static void
+tail_collection ( mongoc_collection_t * collection )
+{
+ mongoc_cursor_t * cursor ;
+ uint32_t last_time ;
+ const bson_t * doc ;
+ bson_error_t error ;
+ bson_iter_t iter ;
+
+ BSON_ASSERT ( collection );
+
+ last_time = ( uint32_t ) time ( NULL );
+
+ while ( true ) {
+ cursor = query_collection ( collection , last_time );
+ while ( ! mongoc_cursor_error ( cursor , & error ) &&
+ mongoc_cursor_more ( cursor )) {
+ if ( mongoc_cursor_next ( cursor , & doc )) {
+ if ( bson_iter_init_find ( & iter , doc , "ts" ) &&
+ BSON_ITER_HOLDS_TIMESTAMP ( & iter )) {
+ bson_iter_timestamp ( & iter , & last_time , NULL );
+ }
+ print_bson ( doc );
+ }
+ }
+ if ( mongoc_cursor_error ( cursor , & error )) {
+ if ( error . domain == MONGOC_ERROR_SERVER ) {
+ fprintf ( stderr , "%s \n " , error . message );
+ exit ( 1 );
+ }
+ }
+
+ mongoc_cursor_destroy ( cursor );
+ sleep ( 1 );
+ }
+}
+
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_collection_t * collection ;
+ mongoc_client_t * client ;
+ mongoc_uri_t * uri ;
+ bson_error_t error ;
+
+ if ( argc != 2 ) {
+ fprintf ( stderr , "usage: %s MONGO_URI \n " , argv [ 0 ]);
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_init ();
+
+ uri = mongoc_uri_new_with_error ( argv [ 1 ], & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ argv [ 1 ],
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+
+ collection = mongoc_client_get_collection ( client , "local" , "oplog.rs" );
+
+ tail_collection ( collection );
+
+ mongoc_collection_destroy ( collection );
+ mongoc_uri_destroy ( uri );
+ mongoc_client_destroy ( client );
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+Let’s compile and run this example against a replica set to see updates as they are made.
+ $ gcc -Wall -o mongoc-tail mongoc-tail.c $(pkg-config --cflags --libs libmongoc-1.0)
+$ ./mongoc-tail mongodb://example.com/?replicaSet=myReplSet
+{
+ "h" : -8458503739429355503,
+ "ns" : "test.test",
+ "o" : {
+ "_id" : {
+ "$oid" : "5372ab0a25164be923d10d50"
+ }
+ },
+ "op" : "i",
+ "ts" : {
+ "$timestamp" : {
+ "i" : 1,
+ "t" : 1400023818
+ }
+ },
+ "v" : 2
+}
+
+
+The line of output is a sample from performing db.test.insert({}) from the mongo shell on the replica set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/debugging.html b/libmongoc/1.23.4/debugging.html
new file mode 100644
index 0000000000000000000000000000000000000000..ae31e00efa813d7616cab0dd31d3ea5d9045fe45
--- /dev/null
+++ b/libmongoc/1.23.4/debugging.html
@@ -0,0 +1,227 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Aids for Debugging — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Aids for Debugging
+
+GDB
+This repository contains a .gdbinit file that contains helper functions to
+aid debugging of data structures. GDB will load this file
+automatically if you have added the directory which contains the .gdbinit file to GDB’s
+auto-load safe-path , and you start GDB from the directory which holds the .gdbinit file.
+You can see the safe-path with show auto-load safe-path on a GDB prompt. You
+can configure it by setting it in ~/.gdbinit with:
+add - auto - load - safe - path / path / to / mongo - c - driver
+
+
+If you haven’t added the path to your auto-load safe-path, or start GDB in
+another directory, load the file with:
+source path / to / mongo - c - driver /. gdbinit
+
+
+The .gdbinit file defines the printbson function, which shows the contents of a bson_t * variable.
+If you have a local bson_t , then you must prefix the variable with a & .
+An example GDB session looks like:
+( gdb ) printbson bson
+ALLOC [ 0x555556cd7310 + 0 ] ( len = 475 )
+{
+ 'bool' : true ,
+ 'int32' : NumberInt ( "42" ),
+ 'int64' : NumberLong ( "3000000042" ),
+ 'string' : "Stŕìñg" ,
+ 'objectId' : ObjectID ( "5A1442F3122D331C3C6757E1" ),
+ 'utcDateTime' : UTCDateTime ( 1511277299031 ),
+ 'arrayOfInts' : [
+ '0' : NumberInt ( "1" ),
+ '1' : NumberInt ( "2" )
+ ],
+ 'embeddedDocument' : {
+ 'arrayOfStrings' : [
+ '0' : "one" ,
+ '1' : "two"
+ ],
+ 'double' : 2.718280 ,
+ 'notherDoc' : {
+ 'true' : NumberInt ( "1" ),
+ 'false' : false
+ }
+ },
+ 'binary' : Binary ( "02" , "3031343532333637" ),
+ 'regex' : Regex ( "@[a-z]+@" , "im" ),
+ 'null' : null ,
+ 'js' : JavaScript ( "print foo" ),
+ 'jsws' : JavaScript ( "print foo" ) with scope : {
+ 'f' : NumberInt ( "42" ),
+ 'a' : [
+ '0' : 3.141593 ,
+ '1' : 2.718282
+ ]
+ },
+ 'timestamp' : Timestamp ( 4294967295 , 4294967295 ),
+ 'double' : 3.141593
+}
+
+
+
+
+LLDB
+This repository also includes a script that customizes LLDB’s standard print command to print a bson_t or bson_t * as JSON:
+ (lldb) print b
+(bson_t) $0 = {"x": 1, "y": 2}
+
+
+The custom bson command provides more options:
+( lldb ) bson -- verbose b
+len = 19
+flags = INLINE | STATIC
+{
+ "x" : 1 ,
+ "y" : 2
+}
+( lldb ) bson -- raw b
+' \x13\x00\x00\x00\x10 x \x00\x01\x00\x00\x00\x10 y \x00\x02\x00\x00\x00\x00 '
+
+
+Type help bson for a list of options.
+The script requires a build of libbson with debug symbols, and an installation of PyMongo . Install PyMongo with:
+python - m pip install pymongo
+
+
+If you see “No module named pip” then you must install pip , then run the previous command again.
+Create a file ~/.lldbinit containing:
+command script import / path / to / mongo - c - driver / lldb_bson . py
+
+
+If you see “bson command installed by lldb_bson” at the beginning of your LLDB session, you’ve installed the script correctly.
+
+
+Debug assertions
+To enable runtime debug assertions, configure with -DENABLE_DEBUG_ASSERTIONS=ON .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/distinct-mapreduce.html b/libmongoc/1.23.4/distinct-mapreduce.html
new file mode 100644
index 0000000000000000000000000000000000000000..9c6a8a58bab9c69ecbf488f9c76038cc1a33a168
--- /dev/null
+++ b/libmongoc/1.23.4/distinct-mapreduce.html
@@ -0,0 +1,577 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ “distinct” and “mapReduce” — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+“distinct” and “mapReduce”
+This document provides some practical, simple, examples to demonstrate the distinct and mapReduce commands.
+
+Setup
+First we’ll write some code to insert sample data:
+
+
doc-common-insert.c
+
/* Don't try to compile this file on its own. It's meant to be #included
+ by example code */
+
+/* Insert some sample data */
+bool
+insert_data ( mongoc_collection_t * collection )
+{
+ mongoc_bulk_operation_t * bulk ;
+ enum N { ndocs = 4 };
+ bson_t * docs [ ndocs ];
+ bson_error_t error ;
+ int i = 0 ;
+ bool ret ;
+
+ bulk = mongoc_collection_create_bulk_operation_with_opts ( collection , NULL );
+
+ docs [ 0 ] = BCON_NEW ( "x" , BCON_DOUBLE ( 1.0 ), "tags" , "[" , "dog" , "cat" , "]" );
+ docs [ 1 ] = BCON_NEW ( "x" , BCON_DOUBLE ( 2.0 ), "tags" , "[" , "cat" , "]" );
+ docs [ 2 ] = BCON_NEW (
+ "x" , BCON_DOUBLE ( 2.0 ), "tags" , "[" , "mouse" , "cat" , "dog" , "]" );
+ docs [ 3 ] = BCON_NEW ( "x" , BCON_DOUBLE ( 3.0 ), "tags" , "[" , "]" );
+
+ for ( i = 0 ; i < ndocs ; i ++ ) {
+ mongoc_bulk_operation_insert ( bulk , docs [ i ]);
+ bson_destroy ( docs [ i ]);
+ docs [ i ] = NULL ;
+ }
+
+ ret = mongoc_bulk_operation_execute ( bulk , NULL , & error );
+
+ if ( ! ret ) {
+ fprintf ( stderr , "Error inserting data: %s \n " , error . message );
+ }
+
+ mongoc_bulk_operation_destroy ( bulk );
+ return ret ;
+}
+
+/* A helper which we'll use a lot later on */
+void
+print_res ( const bson_t * reply )
+{
+ char * str ;
+ BSON_ASSERT ( reply );
+ str = bson_as_canonical_extended_json ( reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+}
+
+
+
+
+
+“distinct” command
+This is how to use the distinct command to get the distinct values of x which are greater than 1 :
+
+
distinct.c
+
bool
+distinct ( mongoc_database_t * database )
+{
+ bson_t * command ;
+ bson_t reply ;
+ bson_error_t error ;
+ bool res ;
+ bson_iter_t iter ;
+ bson_iter_t array_iter ;
+ double val ;
+
+ command = BCON_NEW ( "distinct" ,
+ BCON_UTF8 ( COLLECTION_NAME ),
+ "key" ,
+ BCON_UTF8 ( "x" ),
+ "query" ,
+ "{" ,
+ "x" ,
+ "{" ,
+ "$gt" ,
+ BCON_DOUBLE ( 1.0 ),
+ "}" ,
+ "}" );
+ res =
+ mongoc_database_command_simple ( database , command , NULL , & reply , & error );
+ if ( ! res ) {
+ fprintf ( stderr , "Error with distinct: %s \n " , error . message );
+ goto cleanup ;
+ }
+
+ /* Do something with reply (in this case iterate through the values) */
+ if ( ! ( bson_iter_init_find ( & iter , & reply , "values" ) &&
+ BSON_ITER_HOLDS_ARRAY ( & iter ) &&
+ bson_iter_recurse ( & iter , & array_iter ))) {
+ fprintf ( stderr , "Couldn't extract \" values \" field from response \n " );
+ goto cleanup ;
+ }
+
+ while ( bson_iter_next ( & array_iter )) {
+ if ( BSON_ITER_HOLDS_DOUBLE ( & array_iter )) {
+ val = bson_iter_double ( & array_iter );
+ printf ( "Next double: %f \n " , val );
+ }
+ }
+
+cleanup :
+ /* cleanup */
+ bson_destroy ( command );
+ bson_destroy ( & reply );
+ return res ;
+}
+
+
+
+
+
+“mapReduce” - basic example
+A simple example using the map reduce framework. It simply adds up the number of occurrences of each “tag”.
+First define the map and reduce functions:
+
+
constants.c
+
const char * const COLLECTION_NAME = "things" ;
+
+/* Our map function just emits a single (key, 1) pair for each tag
+ in the array: */
+const char * const MAPPER = "function () {"
+ "this.tags.forEach(function(z) {"
+ "emit(z, 1);"
+ "});"
+ "}" ;
+
+/* The reduce function sums over all of the emitted values for a
+ given key: */
+const char * const REDUCER = "function (key, values) {"
+ "var total = 0;"
+ "for (var i = 0; i < values.length; i++) {"
+ "total += values[i];"
+ "}"
+ "return total;"
+ "}" ;
+/* Note We can't just return values.length as the reduce function
+ might be called iteratively on the results of other reduce
+ steps. */
+
+
+
+Run the mapReduce command. Use the generic command helpers (e.g. mongoc_database_command_simple() ).
+Do not the read command helpers (e.g. mongoc_database_read_command_with_opts() ) because they are considered
+retryable read operations. If retryable reads are enabled, those operations will retry once on a retryable error,
+giving undesirable behavior for mapReduce .
+
+
map-reduce-basic.c
+
bool
+map_reduce_basic ( mongoc_database_t * database )
+{
+ bson_t reply ;
+ bson_t * command ;
+ bool res ;
+ bson_error_t error ;
+ mongoc_cursor_t * cursor ;
+ const bson_t * doc ;
+
+ bool query_done = false ;
+
+ const char * out_collection_name = "outCollection" ;
+ mongoc_collection_t * out_collection ;
+
+ /* Empty find query */
+ bson_t find_query = BSON_INITIALIZER ;
+
+ /* Construct the mapReduce command */
+
+ /* Other arguments can also be specified here, like "query" or
+ "limit" and so on */
+ command = BCON_NEW ( "mapReduce" ,
+ BCON_UTF8 ( COLLECTION_NAME ),
+ "map" ,
+ BCON_CODE ( MAPPER ),
+ "reduce" ,
+ BCON_CODE ( REDUCER ),
+ "out" ,
+ BCON_UTF8 ( out_collection_name ));
+ res =
+ mongoc_database_command_simple ( database , command , NULL , & reply , & error );
+
+ if ( ! res ) {
+ fprintf ( stderr , "MapReduce failed: %s \n " , error . message );
+ goto cleanup ;
+ }
+
+ /* Do something with the reply (it doesn't contain the mapReduce results) */
+ print_res ( & reply );
+
+ /* Now we'll query outCollection to see what the results are */
+ out_collection =
+ mongoc_database_get_collection ( database , out_collection_name );
+ cursor = mongoc_collection_find_with_opts (
+ out_collection , & find_query , NULL , NULL );
+ query_done = true ;
+
+ /* Do something with the results */
+ while ( mongoc_cursor_next ( cursor , & doc )) {
+ print_res ( doc );
+ }
+
+ if ( mongoc_cursor_error ( cursor , & error )) {
+ fprintf ( stderr , "ERROR: %s \n " , error . message );
+ res = false ;
+ goto cleanup ;
+ }
+
+cleanup :
+ /* cleanup */
+ if ( query_done ) {
+ mongoc_cursor_destroy ( cursor );
+ mongoc_collection_destroy ( out_collection );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( command );
+
+ return res ;
+}
+
+
+
+
+
+“mapReduce” - more complicated example
+You must have replica set running for this.
+In this example we contact a secondary in the replica set and do an “inline” map reduce, so the results are returned immediately:
+
+
map-reduce-advanced.c
+
bool
+map_reduce_advanced ( mongoc_database_t * database )
+{
+ bson_t * command ;
+ bson_error_t error ;
+ bool res = true ;
+ mongoc_cursor_t * cursor ;
+ mongoc_read_prefs_t * read_pref ;
+ const bson_t * doc ;
+
+ /* Construct the mapReduce command */
+ /* Other arguments can also be specified here, like "query" or "limit"
+ and so on */
+
+ /* Read the results inline from a secondary replica */
+ command = BCON_NEW ( "mapReduce" ,
+ BCON_UTF8 ( COLLECTION_NAME ),
+ "map" ,
+ BCON_CODE ( MAPPER ),
+ "reduce" ,
+ BCON_CODE ( REDUCER ),
+ "out" ,
+ "{" ,
+ "inline" ,
+ "1" ,
+ "}" );
+
+ read_pref = mongoc_read_prefs_new ( MONGOC_READ_SECONDARY );
+ cursor = mongoc_database_command (
+ database , MONGOC_QUERY_NONE , 0 , 0 , 0 , command , NULL , read_pref );
+
+ /* Do something with the results */
+ while ( mongoc_cursor_next ( cursor , & doc )) {
+ print_res ( doc );
+ }
+
+ if ( mongoc_cursor_error ( cursor , & error )) {
+ fprintf ( stderr , "ERROR: %s \n " , error . message );
+ res = false ;
+ }
+
+ mongoc_cursor_destroy ( cursor );
+ mongoc_read_prefs_destroy ( read_pref );
+ bson_destroy ( command );
+
+ return res ;
+}
+
+
+
+
+
+Running the Examples
+Here’s how to run the example code
+
+
basic-aggregation.c
+
/*
+ * Copyright 2016 MongoDB, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+
+#include "constants.c"
+
+#include "../doc-common-insert.c"
+#include "distinct.c"
+#include "map-reduce-basic.c"
+#include "map-reduce-advanced.c"
+
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_database_t * database = NULL ;
+ mongoc_client_t * client = NULL ;
+ mongoc_collection_t * collection = NULL ;
+ mongoc_uri_t * uri = NULL ;
+ bson_error_t error ;
+ char * host_and_port = NULL ;
+ int exit_code = EXIT_FAILURE ;
+
+ if ( argc != 2 ) {
+ fprintf ( stderr , "usage: %s CONNECTION-STRING \n " , argv [ 0 ]);
+ fprintf ( stderr ,
+ "the connection string can be of the following forms: \n " );
+ fprintf ( stderr , "localhost \t\t\t\t local machine \n " );
+ fprintf ( stderr , "localhost:27018 \t\t\t\t local machine on port 27018 \n " );
+ fprintf ( stderr ,
+ "mongodb://user:pass@localhost:27017 \t "
+ "local machine on port 27017, and authenticate with username "
+ "user and password pass \n " );
+ return exit_code ;
+ }
+
+ mongoc_init ();
+
+ if ( strncmp ( argv [ 1 ], "mongodb://" , 10 ) == 0 ) {
+ host_and_port = bson_strdup ( argv [ 1 ]);
+ } else {
+ host_and_port = bson_strdup_printf ( "mongodb://%s" , argv [ 1 ]);
+ }
+
+ uri = mongoc_uri_new_with_error ( host_and_port , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ host_and_port ,
+ error . message );
+ goto cleanup ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ goto cleanup ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+ database = mongoc_client_get_database ( client , "test" );
+ collection = mongoc_database_get_collection ( database , COLLECTION_NAME );
+
+ printf ( "Inserting data \n " );
+ if ( ! insert_data ( collection )) {
+ goto cleanup ;
+ }
+
+ printf ( "distinct \n " );
+ if ( ! distinct ( database )) {
+ goto cleanup ;
+ }
+
+ printf ( "map reduce \n " );
+ if ( ! map_reduce_basic ( database )) {
+ goto cleanup ;
+ }
+
+ printf ( "more complicated map reduce \n " );
+ if ( ! map_reduce_advanced ( database )) {
+ goto cleanup ;
+ }
+
+ exit_code = EXIT_SUCCESS ;
+
+cleanup :
+ if ( collection ) {
+ mongoc_collection_destroy ( collection );
+ }
+
+ if ( database ) {
+ mongoc_database_destroy ( database );
+ }
+
+ if ( client ) {
+ mongoc_client_destroy ( client );
+ }
+
+ if ( uri ) {
+ mongoc_uri_destroy ( uri );
+ }
+
+ if ( host_and_port ) {
+ bson_free ( host_and_port );
+ }
+
+ mongoc_cleanup ();
+ return exit_code ;
+}
+
+
+
+If you want to try the advanced map reduce example with a secondary, start a replica set (instructions for how to do this can be found here ).
+Otherwise, just start an instance of MongoDB:
+
+Now compile and run the example program:
+ $ cd examples/basic_aggregation/
+$ gcc -Wall -o agg-example basic-aggregation.c $(pkg-config --cflags --libs libmongoc-1.0)
+$ ./agg-example localhost
+
+Inserting data
+distinct
+Next double: 2.000000
+Next double: 3.000000
+map reduce
+{ "result" : "outCollection", "timeMillis" : 155, "counts" : { "input" : 84, "emit" : 126, "reduce" : 3, "output" : 3 }, "ok" : 1 }
+{ "_id" : "cat", "value" : 63 }
+{ "_id" : "dog", "value" : 42 }
+{ "_id" : "mouse", "value" : 21 }
+more complicated map reduce
+{ "results" : [ { "_id" : "cat", "value" : 63 }, { "_id" : "dog", "value" : 42 }, { "_id" : "mouse", "value" : 21 } ], "timeMillis" : 14, "counts" : { "input" : 84, "emit" : 126, "reduce" : 3, "output" : 3 }, "ok" : 1 }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/errors.html b/libmongoc/1.23.4/errors.html
new file mode 100644
index 0000000000000000000000000000000000000000..ca79e6bc5837fd028ec4ca58aff9cd55f9725144
--- /dev/null
+++ b/libmongoc/1.23.4/errors.html
@@ -0,0 +1,342 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Error Reporting — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
« libmongoc
+
+Error Reporting
+
+Description
+Many C Driver functions report errors by returning false or -1 and filling out a bson_error_t structure with an error domain, error code, and message. Use domain to determine which subsystem generated the error, and code for the specific error. message is a human-readable error description.
+
+
+
+Domain
+Code
+Description
+
+
+
+MONGOC_ERROR_CLIENT
+MONGOC_ERROR_CLIENT_TOO_BIG
+You tried to send a message larger than the server’s max message size.
+
+
+MONGOC_ERROR_CLIENT_AUTHENTICATE
+Wrong credentials, or failure sending or receiving authentication messages.
+
+
+MONGOC_ERROR_CLIENT_NO_ACCEPTABLE_PEER
+You tried an TLS connection but the driver was not built with TLS.
+
+
+MONGOC_ERROR_CLIENT_IN_EXHAUST
+You began iterating an exhaust cursor, then tried to begin another operation with the same mongoc_client_t .
+
+
+MONGOC_ERROR_CLIENT_SESSION_FAILURE
+Failure related to creating or using a logical session.
+
+
+MONGOC_ERROR_CLIENT_INVALID_ENCRYPTION_ARG
+Failure related to arguments passed when initializing Client-Side Field Level Encryption.
+
+
+MONGOC_ERROR_CLIENT_INVALID_ENCRYPTION_STATE
+Failure related to Client-Side Field Level Encryption.
+
+
+MONGOC_ERROR_CLIENT_INVALID_LOAD_BALANCER
+You attempted to connect to a MongoDB server behind a load balancer, but the server does not advertize load balanced support.
+
+MONGOC_ERROR_STREAM
+MONGOC_ERROR_STREAM_NAME_RESOLUTION
+DNS failure.
+
+
+MONGOC_ERROR_STREAM_SOCKET
+Timeout communicating with server, or connection closed.
+
+
+MONGOC_ERROR_STREAM_CONNECT
+Failed to connect to server.
+
+MONGOC_ERROR_PROTOCOL
+MONGOC_ERROR_PROTOCOL_INVALID_REPLY
+Corrupt response from server.
+
+
+MONGOC_ERROR_PROTOCOL_BAD_WIRE_VERSION
+The server version is too old or too new to communicate with the driver.
+
+MONGOC_ERROR_CURSOR
+MONGOC_ERROR_CURSOR_INVALID_CURSOR
+You passed bad arguments to mongoc_collection_find_with_opts() , or you called mongoc_cursor_next() on a completed or failed cursor, or the cursor timed out on the server.
+
+
+MONGOC_ERROR_CHANGE_STREAM_NO_RESUME_TOKEN
+A resume token was not returned in a document found with mongoc_change_stream_next()
+
+MONGOC_ERROR_QUERY
+MONGOC_ERROR_QUERY_FAILURE
+Error API Version 1 : Server error from command or query. The server error message is in message .
+
+MONGOC_ERROR_SERVER
+MONGOC_ERROR_QUERY_FAILURE
+Error API Version 2 : Server error from command or query. The server error message is in message .
+
+MONGOC_ERROR_SASL
+A SASL error code.
+man sasl_errors for a list of codes.
+
+MONGOC_ERROR_BSON
+MONGOC_ERROR_BSON_INVALID
+You passed an invalid or oversized BSON document as a parameter, or called mongoc_collection_create_index() with invalid keys, or the server reply was corrupt.
+
+MONGOC_ERROR_NAMESPACE
+MONGOC_ERROR_NAMESPACE_INVALID
+You tried to create a collection with an invalid name.
+
+MONGOC_ERROR_COMMAND
+MONGOC_ERROR_COMMAND_INVALID_ARG
+Many functions set this error code when passed bad parameters. Print the error message for details.
+
+
+MONGOC_ERROR_PROTOCOL_BAD_WIRE_VERSION
+You tried to use a command option the server does not support.
+
+
+MONGOC_ERROR_DUPLICATE_KEY
+An insert or update failed because because of a duplicate _id or other unique-index violation.
+
+
+MONGOC_ERROR_MAX_TIME_MS_EXPIRED
+The operation failed because maxTimeMS expired.
+
+
+MONGOC_ERROR_SERVER_SELECTION_INVALID_ID
+The serverId option for an operation conflicts with the pinned server for that operation’s client session (denoted by the sessionId option).
+
+MONGOC_ERROR_COMMAND
+Error code from server .
+Error API Version 1 : Server error from a command. The server error message is in message .
+
+MONGOC_ERROR_SERVER
+Error code from server .
+Error API Version 2 : Server error from a command. The server error message is in message .
+
+MONGOC_ERROR_COLLECTION
+MONGOC_ERROR_COLLECTION_INSERT_FAILED , MONGOC_ERROR_COLLECTION_UPDATE_FAILED , MONGOC_ERROR_COLLECTION_DELETE_FAILED .
+Invalid or empty input to mongoc_collection_insert_one() , mongoc_collection_insert_bulk() , mongoc_collection_update_one() , mongoc_collection_update_many() , mongoc_collection_replace_one() , mongoc_collection_delete_one() , or mongoc_collection_delete_many() .
+
+MONGOC_ERROR_COLLECTION
+Error code from server .
+Error API Version 1 : Server error from mongoc_collection_insert_one() , mongoc_collection_insert_bulk() , mongoc_collection_update_one() , mongoc_collection_update_many() , mongoc_collection_replace_one() ,
+
+MONGOC_ERROR_SERVER
+Error code from server .
+Error API Version 2 : Server error from mongoc_collection_insert_one() , mongoc_collection_insert_bulk() , mongoc_collection_update_one() , mongoc_collection_update_many() , mongoc_collection_replace_one() ,
+
+MONGOC_ERROR_GRIDFS
+MONGOC_ERROR_GRIDFS_CHUNK_MISSING
+The GridFS file is missing a document in its chunks collection.
+
+
+MONGOC_ERROR_GRIDFS_CORRUPT
+A data inconsistency was detected in GridFS.
+
+
+MONGOC_ERROR_GRIDFS_INVALID_FILENAME
+You passed a NULL filename to mongoc_gridfs_remove_by_filename() .
+
+
+MONGOC_ERROR_GRIDFS_PROTOCOL_ERROR
+You called mongoc_gridfs_file_set_id() after mongoc_gridfs_file_save() , or tried to write on a closed GridFS stream.
+
+
+MONGOC_ERROR_GRIDFS_BUCKET_FILE_NOT_FOUND
+A GridFS file is missing from files collection.
+
+
+MONGOC_ERROR_GRIDFS_BUCKET_STREAM
+An error occurred on a stream created from a GridFS operation like mongoc_gridfs_bucket_upload_from_stream() .
+
+MONGOC_ERROR_SCRAM
+MONGOC_ERROR_SCRAM_PROTOCOL_ERROR
+Failure in SCRAM-SHA-1 authentication.
+
+MONGOC_ERROR_SERVER_SELECTION
+MONGOC_ERROR_SERVER_SELECTION_FAILURE
+No replica set member or mongos is available, or none matches your read preference , or you supplied an invalid mongoc_read_prefs_t .
+
+MONGOC_ERROR_WRITE_CONCERN
+Error code from server .
+There was a write concern error or timeout from the server.
+
+MONGOC_ERROR_TRANSACTION
+MONGOC_ERROR_TRANSACTION_INVALID
+You attempted to start a transaction when one is already in progress, or commit or abort when there is no transaction.
+
+MONGOC_ERROR_CLIENT_SIDE_ENCRYPTION
+Error code produced by libmongocrypt.
+An error occurred in the library responsible for Client Side Encryption
+
+
+
+
+
+Error Labels
+In some cases your application must make decisions based on what category of error the driver has returned, but these categories do not correspond perfectly to an error domain or code. In such cases, error labels provide a reliable way to determine how your application should respond to an error.
+Any C Driver function that has a bson_t out-parameter named reply may include error labels to the reply, in the form of a BSON field named “errorLabels” containing an array of strings:
+ { "errorLabels": [ "TransientTransactionError" ] }
+
+
+Use mongoc_error_has_label() to test if a reply contains a specific label. See mongoc_client_session_start_transaction() for example code that demonstrates the use of error labels in application logic.
+The following error labels are currently defined. Future versions of MongoDB may introduce new labels.
+
+TransientTransactionError
+Within a multi-document transaction, certain errors can leave the transaction in an unknown or aborted state. These include write conflicts, primary stepdowns, and network errors. In response, the application should abort the transaction and try the same sequence of operations again in a new transaction.
+
+
+UnknownTransactionCommitResult
+When mongoc_client_session_commit_transaction() encounters a network error or certain server errors, it is not known whether the transaction was committed. Applications should attempt to commit the transaction again until: the commit succeeds, the commit fails with an error not labeled “UnknownTransactionCommitResult”, or the application chooses to give up.
+
+
+
+Setting the Error API Version
+The driver’s error reporting began with a design flaw: when the error domain is MONGOC_ERROR_COLLECTION , MONGOC_ERROR_QUERY , or MONGOC_ERROR_COMMAND , the error code might originate from the server or the driver. An application cannot always know where an error originated, and therefore cannot tell what the code means.
+For example, if mongoc_collection_update_one() sets the error’s domain to MONGOC_ERROR_COLLECTION and its code to 24, the application cannot know whether 24 is the generic driver error code MONGOC_ERROR_COLLECTION_UPDATE_FAILED or the specific server error code “LockTimeout”.
+To fix this flaw while preserving backward compatibility, the C Driver 1.4 introduces “Error API Versions”. Version 1, the default Error API Version, maintains the flawed behavior. Version 2 adds a new error domain, MONGOC_ERROR_SERVER . In Version 2, error codes originating on the server always have error domain MONGOC_ERROR_SERVER or MONGOC_ERROR_WRITE_CONCERN . When the driver uses Version 2 the application can always determine the origin and meaning of error codes. New applications should use Version 2, and existing applications should be updated to use Version 2 as well.
+
+The Error API Versions are defined with MONGOC_ERROR_API_VERSION_LEGACY and MONGOC_ERROR_API_VERSION_2 . Set the version with mongoc_client_set_error_api() or mongoc_client_pool_set_error_api() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/full_index.html b/libmongoc/1.23.4/full_index.html
new file mode 100644
index 0000000000000000000000000000000000000000..453bef8f25b3bb30691b9334d8e90d9e7a6b3a0d
--- /dev/null
+++ b/libmongoc/1.23.4/full_index.html
@@ -0,0 +1,924 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Index — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/gridfs.html b/libmongoc/1.23.4/gridfs.html
new file mode 100644
index 0000000000000000000000000000000000000000..1e9d4e6157c035bb1a719e407370629ce956c0ae
--- /dev/null
+++ b/libmongoc/1.23.4/gridfs.html
@@ -0,0 +1,184 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ GridFS — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/guides.html b/libmongoc/1.23.4/guides.html
new file mode 100644
index 0000000000000000000000000000000000000000..2500fe346477a114c03d7abb0152bdc1df24a1d4
--- /dev/null
+++ b/libmongoc/1.23.4/guides.html
@@ -0,0 +1,147 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Guides — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/index.html b/libmongoc/1.23.4/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..f5b14eaf48eab56abff7b76a479d627e18968bcb
--- /dev/null
+++ b/libmongoc/1.23.4/index.html
@@ -0,0 +1,284 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ libmongoc — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+libmongoc
+A Cross Platform MongoDB Client Library for C
+
+Introduction
+The MongoDB C Driver, also known as “libmongoc”, is a library for using MongoDB from C applications, and for writing MongoDB drivers in higher-level languages.
+It depends on libbson to generate and parse BSON documents, the native data format of MongoDB.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/init-cleanup.html b/libmongoc/1.23.4/init-cleanup.html
new file mode 100644
index 0000000000000000000000000000000000000000..8de5a91c4032a505a34118a46524da6f8e3061e0
--- /dev/null
+++ b/libmongoc/1.23.4/init-cleanup.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Initialization and cleanup — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Initialization and cleanup
+
+Synopsis
+Initialize the MongoDB C Driver by calling mongoc_init() exactly once at the beginning of your program. It is responsible for initializing global state such as process counters, SSL, and threading primitives.
+Exception to this is mongoc_log_set_handler() , which should be called before mongoc_init() or some log traces would not use your log handling function. See Custom Log Handlers for a detailed example.
+Call mongoc_cleanup() exactly once at the end of your program to release all memory and other resources allocated by the driver. You must not call any other MongoDB C Driver functions after mongoc_cleanup() . Note that mongoc_init() does not reinitialize the driver after mongoc_cleanup() .
+
+
+
+Deprecated feature: automatic initialization and cleanup
+On some platforms the driver can automatically call mongoc_init() before main , and call mongoc_cleanup() as the process exits. This is problematic in situations where related libraries also execute cleanup code on shutdown, and it creates inconsistent rules across platforms. Therefore the automatic initialization and cleanup feature is deprecated, and will be dropped in version 2.0. Meanwhile, for backward compatibility, the feature is enabled by default on platforms where it is available.
+For portable, future-proof code, always call mongoc_init() and mongoc_cleanup() yourself, and configure the driver like:
+ cmake -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/installing.html b/libmongoc/1.23.4/installing.html
new file mode 100644
index 0000000000000000000000000000000000000000..4936cf7f5749fcb8f794bf38278ae604c479fa56
--- /dev/null
+++ b/libmongoc/1.23.4/installing.html
@@ -0,0 +1,363 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Installing the MongoDB C Driver (libmongoc) and BSON library (libbson) — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Installing the MongoDB C Driver (libmongoc) and BSON library (libbson)
+The following guide will step you through the process of downloading, building, and installing the current release of the MongoDB C Driver (libmongoc) and BSON library (libbson).
+
+
+Install libmongoc with a Package Manager
+Several Linux distributions provide packages for libmongoc and its dependencies. One advantage of installing libmongoc with a package manager is that its dependencies (including libbson) will be installed automatically. If you choose to install libmongoc from distribution packages, use the package manager to confirm the version being installed is sufficient for your needs.
+The libmongoc package is available on recent versions of Debian and Ubuntu.
+ $ apt-get install libmongoc-1.0-0
+
+
+On Fedora, a mongo-c-driver package is available in the default repositories and can be installed with:
+ $ dnf install mongo-c-driver
+
+
+On recent Red Hat systems, such as CentOS and RHEL 7, a mongo-c-driver package is available in the EPEL repository. To check which version is available, see https://packages.fedoraproject.org/pkgs/mongo-c-driver/mongo-c-driver/ . The package can be installed with:
+ $ yum install mongo-c-driver
+
+
+On macOS systems with Homebrew, the mongo-c-driver package can be installed with:
+ $ brew install mongo-c-driver
+
+
+
+
+Install libbson with a Package Manager
+The libbson package is available on recent versions of Debian and Ubuntu. If you have installed libmongoc, then libbson will have already been installed as a dependency. It is also possible to install libbson without libmongoc.
+ $ apt-get install libbson-1.0-0
+
+
+On Fedora, a libbson package is available in the default repositories and can be installed with:
+
+On recent Red Hat systems, such as CentOS and RHEL 7, a libbson package
+is available in the EPEL repository. To check
+which version is available, see https://apps.fedoraproject.org/packages/libbson .
+The package can be installed with:
+
+
+
+Build environment
+
+Build environment on Unix
+
+Prerequisites for libmongoc
+OpenSSL is required for authentication or for TLS connections to MongoDB. Kerberos or LDAP support requires Cyrus SASL.
+To install all optional dependencies on RedHat / Fedora:
+ $ sudo yum install cmake openssl-devel cyrus-sasl-devel
+
+
+On Debian / Ubuntu:
+ $ sudo apt-get install cmake libssl-dev libsasl2-dev
+
+
+On FreeBSD:
+ $ su -c 'pkg install cmake openssl cyrus-sasl'
+
+
+
+
+Prerequisites for libbson
+The only prerequisite for building libbson is cmake . The command lines above can be adjusted to install only cmake .
+
+
+
+
+Build environment on Windows with Visual Studio
+Building on Windows requires Windows Vista or newer and Visual Studio 2013 or newer. Additionally, cmake is required to generate Visual Studio project files. Installation of these components on Windows is beyond the scope of this document.
+
+
+Build environment on Windows with MinGW-W64 and MSYS2
+Install MSYS2 from msys2.github.io . Choose the x86_64 version, not i686.
+Open the MingGW shell with c:\msys64\ming64.exe (not the msys2_shell). Install dependencies:
+ $ pacman --noconfirm -Syu
+$ pacman --noconfirm -S mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake
+$ pacman --noconfirm -S mingw-w64-x86_64-extra-cmake-modules make tar
+$ pacman --noconfirm -S mingw64/mingw-w64-x86_64-cyrus-sasl
+
+
+
+
+
+Configuring the build
+Before building libmongoc and/or libbson, it is necessary to configure, or prepare, the build. The steps to prepare the build depend on how you obtained the source code and the build platform.
+
+Preparing a build from a release tarball
+The most recent release of libmongoc and libbson, both of which are included in mongo-c-driver, can be downloaded here . The instructions in this document utilize cmake ’s out-of-source build feature to keep build artifacts separate from source files. While the $ prompt is used throughout, the instructions below will work on Linux, macOS, and Windows (assuming that CMake is in the user’s shell path in all cases). See the subsequent sections for additional platform-specific instructions.
+The following snippet will download and extract the driver, and configure it:
+$ wget https://github.com/mongodb/mongo-c-driver/releases/download/ 1.23.4/mongo-c-driver-1.23.4.tar.gz
+$ tar xzf mongo-c-driver-1.23.4.tar.gz
+$ cd mongo-c-driver-1.23.4
+$ mkdir cmake-build
+$ cd cmake-build
+$ cmake -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF ..
+The -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF option is recommended, see Initialization and cleanup . Another useful cmake option is -DCMAKE_BUILD_TYPE=Release for a release optimized build and -DCMAKE_BUILD_TYPE=Debug for a debug build. For a list of all configure options, run cmake -L .. .
+If cmake completed successfully, you will see a considerable amount of output describing your build configuration. The final line of output should look something like this:
+-- Build files have been written to: /home/user/mongo-c-driver-1.23.4/cmake-build
+If cmake concludes with anything different, then it is likely an error occurred.
+mongo-c-driver contains a copy of libbson, in case your system does not already have libbson installed. The configuration will detect if libbson is not installed and use the bundled libbson.
+Additionally, it is possible to build only libbson by setting the -DENABLE_MONGOC=OFF option:
+ $ cmake -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF -DENABLE_MONGOC=OFF ..
+
+
+A build configuration description similar to the one above will be displayed, though with fewer entries. Once the configuration is complete, the selected items can be built and installed with these commands:
+
+
+Preparing a build from a git repository clone
+Clone the repository and prepare the build on the current branch or a particular release tag:
+$ git clone https://github.com/mongodb/mongo-c-driver.git
+$ cd mongo-c-driver
+$ git checkout 1.23.4 # To build a particular release
+$ python build/calc_release_version.py > VERSION_CURRENT
+$ mkdir cmake-build
+$ cd cmake-build
+$ cmake -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF ..
+
+
+Preparing a build on Windows with Visual Studio
+On the Windows platform with Visual Studio, it may be necessary to specify the CMake generator to use. This is especially important if multiple versions of Visual Studio are installed on the system or if alternate build tools (e.g., MinGW, MSYS2, Cygwin, etc.) are present on the system. Specifying the generator will ensure that the build configuration is known with certainty, rather than relying on the toolchain that CMake happens to find.
+Start by generating Visual Studio project files. The following assumes you are compiling for 64-bit Windows using Visual Studio 2015 Express, which can be freely downloaded from Microsoft. The sample commands utilize cmake ’s out-of-source build feature to keep build artifacts separate from source files.
+$ cd mongo-c-driver-1.23.4
+$ mkdir cmake-build
+$ cd cmake-build
+$ cmake -G "Visual Studio 14 2015 Win64" \
+ "-DCMAKE_INSTALL_PREFIX=C:\mongo-c-driver" \
+ "-DCMAKE_PREFIX_PATH=C:\mongo-c-driver" \
+ ..
+(Run cmake -LH .. for a list of other options.)
+To see a complete list of the CMake generators available on your specific system, use a command like this:
+
+
+
+
+Executing a build
+
+Building on Unix, macOS, and Windows (MinGW-W64 and MSYS2)
+ $ cmake --build .
+$ sudo cmake --build . --target install
+
+
+(Note that the sudo command may not be applicable or available depending on the configuration of your system.)
+In the above commands, the first relies on the default target which builds all configured components. For fine grained control over what gets built, the following command can be used (for Ninja and Makefile-based build systems) to list all available targets:
+
+
+
+Building on Windows with Visual Studio
+Once the project files are generated, the project can be opened directly in Visual Studio or compiled from the command line.
+Build using the CMake build tool mode:
+ $ cmake --build . --config RelWithDebInfo
+
+
+Visual Studio’s default build type is Debug , but we recommend a release build with debug info for production use. Now that libmongoc and libbson are compiled, install them. Components will be installed to the path specified by CMAKE_INSTALL_PREFIX .
+ $ cmake --build . --config RelWithDebInfo --target install
+
+
+You should now see libmongoc and libbson installed in C:\mongo-c-driver
+For Visual Studio 2019 (16.4 and newer), this command can be used to list all available targets:
+ $ cmake --build . -- /targets
+
+
+Alternately, you can examine the files matching the glob *.vcxproj in the cmake-build directory.
+To use the driver libraries in your program, see Using libmongoc in a Microsoft Visual Studio project .
+
+
+Generating the documentation
+Install Sphinx , then:
+ $ cmake -DENABLE_MAN_PAGES=ON -DENABLE_HTML_DOCS=ON ..
+$ cmake --build . --target mongoc-doc
+
+
+To build only the libbson documentation:
+ $ cmake -DENABLE_MAN_PAGES=ON -DENABLE_HTML_DOCS=ON ..
+$ cmake --build . --target bson-doc
+
+
+The -DENABLE_MAN_PAGES=ON and -DENABLE_HTML_DOCS=ON can also be added as options to a normal build from a release tarball or from git so that the documentation is built at the same time as other components.
+
+
+Uninstalling the installed components
+There are two ways to uninstall the components that have been installed. The first is to invoke the uninstall program directly. On Linux/Unix:
+ $ sudo /usr/local/share/mongo-c-driver/uninstall.sh
+
+
+On Windows:
+ $ C:\mongo-c-driver\share\mongo-c-driver\uninstall.bat
+
+
+The second way to uninstall is from within the build directory, assuming that it is in the exact same state as when the install command was invoked:
+ $ sudo cmake --build . --target uninstall
+
+
+The second approach simply invokes the uninstall program referenced in the first approach.
+
+
+Dealing with Build Failures
+If your attempt to build the C driver fails, please see the README for instructions on requesting assistance.
+
+
+
+Additional Options for Integrators
+In the event that you are building the BSON library and/or the C driver to embed with other components and you wish to avoid the potential for collision with components installed from a standard build or from a distribution package manager, you can make use of the BSON_OUTPUT_BASENAME and MONGOC_OUTPUT_BASENAME options to cmake .
+ $ cmake -DBSON_OUTPUT_BASENAME=custom_bson -DMONGOC_OUTPUT_BASENAME=custom_mongoc ..
+
+
+The above command would produce libraries named libcustom_bson.so and libcustom_mongoc.so (or with the extension appropriate for the build platform). Those libraries could be placed in a standard system directory or in an alternate location and could be linked to by specifying something like -lcustom_mongoc -lcustom_bson on the linker command line (possibly adjusting the specific flags to those required by your linker).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/lifecycle.html b/libmongoc/1.23.4/lifecycle.html
new file mode 100644
index 0000000000000000000000000000000000000000..17e0a2c866c145a64ddebac9e47788304d6037e6
--- /dev/null
+++ b/libmongoc/1.23.4/lifecycle.html
@@ -0,0 +1,215 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Object Lifecycle — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Object Lifecycle
+This page documents the order of creation and destruction for libmongoc’s main struct types.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/logging.html b/libmongoc/1.23.4/logging.html
new file mode 100644
index 0000000000000000000000000000000000000000..5ac7b2251600753f1f9e09b254148c2374ac6e61
--- /dev/null
+++ b/libmongoc/1.23.4/logging.html
@@ -0,0 +1,294 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Logging — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Logging
+MongoDB C driver Logging Abstraction
+
+Synopsis
+typedef enum {
+ MONGOC_LOG_LEVEL_ERROR ,
+ MONGOC_LOG_LEVEL_CRITICAL ,
+ MONGOC_LOG_LEVEL_WARNING ,
+ MONGOC_LOG_LEVEL_MESSAGE ,
+ MONGOC_LOG_LEVEL_INFO ,
+ MONGOC_LOG_LEVEL_DEBUG ,
+ MONGOC_LOG_LEVEL_TRACE ,
+} mongoc_log_level_t ;
+
+#define MONGOC_ERROR(...)
+#define MONGOC_CRITICAL(...)
+#define MONGOC_WARNING(...)
+#define MONGOC_MESSAGE(...)
+#define MONGOC_INFO(...)
+#define MONGOC_DEBUG(...)
+
+typedef void ( * mongoc_log_func_t ) ( mongoc_log_level_t log_level ,
+ const char * log_domain ,
+ const char * message ,
+ void * user_data );
+
+void
+mongoc_log_set_handler ( mongoc_log_func_t log_func , void * user_data );
+void
+mongoc_log ( mongoc_log_level_t log_level ,
+ const char * log_domain ,
+ const char * format ,
+ ...) BSON_GNUC_PRINTF ( 3 , 4 );
+const char *
+mongoc_log_level_str ( mongoc_log_level_t log_level );
+void
+mongoc_log_default_handler ( mongoc_log_level_t log_level ,
+ const char * log_domain ,
+ const char * message ,
+ void * user_data );
+void
+mongoc_log_trace_enable ( void );
+void
+mongoc_log_trace_disable ( void );
+
+
+The MongoDB C driver comes with an abstraction for logging that you can use in your application, or integrate with an existing logging system.
+
+
+Macros
+To make logging a little less painful, various helper macros are provided. See the following example.
+#undef MONGOC_LOG_DOMAIN
+#define MONGOC_LOG_DOMAIN "my-custom-domain"
+
+MONGOC_WARNING ( "An error occurred: %s" , strerror ( errno ));
+
+
+
+
+Custom Log Handlers
+
+The default log handler prints a timestamp and the log message to stdout , or to stderr for warnings, critical messages, and errors. You can override the handler with mongoc_log_set_handler() .
+Your handler function is called in a mutex for thread safety.
+
+
+For example, you could register a custom handler to suppress messages at INFO level and below:
+void
+my_logger ( mongoc_log_level_t log_level ,
+ const char * log_domain ,
+ const char * message ,
+ void * user_data )
+{
+ /* smaller values are more important */
+ if ( log_level < MONGOC_LOG_LEVEL_INFO ) {
+ mongoc_log_default_handler ( log_level , log_domain , message , user_data );
+ }
+}
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_log_set_handler ( my_logger , NULL );
+ mongoc_init ();
+
+ /* ... your code ... */
+
+ mongoc_cleanup ();
+ return 0 ;
+}
+
+
+Note that in the example above mongoc_log_set_handler() is called before mongoc_init() .
+Otherwise, some log traces could not be processed by the log handler.
+To restore the default handler:
+mongoc_log_set_handler ( mongoc_log_default_handler , NULL );
+
+
+
+
+Disable logging
+To disable all logging, including warnings, critical messages and errors, provide an empty log handler:
+mongoc_log_set_handler ( NULL , NULL );
+
+
+
+
+Tracing
+If compiling your own copy of the MongoDB C driver, consider configuring with -DENABLE_TRACING=ON to enable function tracing and hex dumps of network packets to STDERR and STDOUT during development and debugging.
+This is especially useful when debugging what may be going on internally in the driver.
+Trace messages can be enabled and disabled by calling mongoc_log_trace_enable() and mongoc_log_trace_disable()
+
+
Note
+
Compiling the driver with -DENABLE_TRACING=ON will affect its performance. Disabling tracing with mongoc_log_trace_disable() significantly reduces the overhead, but cannot remove it completely.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/matcher.html b/libmongoc/1.23.4/matcher.html
new file mode 100644
index 0000000000000000000000000000000000000000..ff52b8388650afcafeaaad25f75e359129a889e6
--- /dev/null
+++ b/libmongoc/1.23.4/matcher.html
@@ -0,0 +1,128 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Client Side Document Matching — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Client Side Document Matching
+
+Basic Document Matching (Deprecated)
+
+
Warning
+
This feature will be removed in version 2.0.
+
+The MongoDB C driver supports matching a subset of the MongoDB query specification on the client.
+Currently, basic numeric, string, subdocument, and array equality, $gt , $gte , $lt , $lte , $in , $nin , $ne , $exists , $type , $and , and $or are supported. As this is not the same implementation as the MongoDB server, some inconsistencies may occur. Please file a bug if you find such a case.
+To test this, perform a mongodump of a single collection and pipe it to the program.
+ $ echo "db.test.insert({hello:'world'})" | mongo
+connecting to: test
+WriteResult({ "nInserted" : 1 })
+bye
+
+$ mongodump -d test -c test -o - | filter-bsondump
+{ "_id" : { "$oid" : "537afac9a70e5b4d556153bc" }, "hello" : "world" }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc-common-task-examples.html b/libmongoc/1.23.4/mongoc-common-task-examples.html
new file mode 100644
index 0000000000000000000000000000000000000000..ec43ed0e8c3098367d299b8cf07fe569e61cd2b3
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc-common-task-examples.html
@@ -0,0 +1,428 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Common Tasks — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Common Tasks
+Drivers for some other languages provide helper functions to perform certain common tasks. In the C Driver we must explicitly build commands to send to the server.
+
+Setup
+First we’ll write some code to insert sample data:
+
+
doc-common-insert.c
+
/* Don't try to compile this file on its own. It's meant to be #included
+ by example code */
+
+/* Insert some sample data */
+bool
+insert_data ( mongoc_collection_t * collection )
+{
+ mongoc_bulk_operation_t * bulk ;
+ enum N { ndocs = 4 };
+ bson_t * docs [ ndocs ];
+ bson_error_t error ;
+ int i = 0 ;
+ bool ret ;
+
+ bulk = mongoc_collection_create_bulk_operation_with_opts ( collection , NULL );
+
+ docs [ 0 ] = BCON_NEW ( "x" , BCON_DOUBLE ( 1.0 ), "tags" , "[" , "dog" , "cat" , "]" );
+ docs [ 1 ] = BCON_NEW ( "x" , BCON_DOUBLE ( 2.0 ), "tags" , "[" , "cat" , "]" );
+ docs [ 2 ] = BCON_NEW (
+ "x" , BCON_DOUBLE ( 2.0 ), "tags" , "[" , "mouse" , "cat" , "dog" , "]" );
+ docs [ 3 ] = BCON_NEW ( "x" , BCON_DOUBLE ( 3.0 ), "tags" , "[" , "]" );
+
+ for ( i = 0 ; i < ndocs ; i ++ ) {
+ mongoc_bulk_operation_insert ( bulk , docs [ i ]);
+ bson_destroy ( docs [ i ]);
+ docs [ i ] = NULL ;
+ }
+
+ ret = mongoc_bulk_operation_execute ( bulk , NULL , & error );
+
+ if ( ! ret ) {
+ fprintf ( stderr , "Error inserting data: %s \n " , error . message );
+ }
+
+ mongoc_bulk_operation_destroy ( bulk );
+ return ret ;
+}
+
+/* A helper which we'll use a lot later on */
+void
+print_res ( const bson_t * reply )
+{
+ char * str ;
+ BSON_ASSERT ( reply );
+ str = bson_as_canonical_extended_json ( reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+}
+
+
+
+
+
+“explain” Command
+This is how to use the explain command in MongoDB 3.2+:
+
+
explain.c
+
bool
+explain ( mongoc_collection_t * collection )
+{
+ bson_t * command ;
+ bson_t reply ;
+ bson_error_t error ;
+ bool res ;
+
+ command = BCON_NEW ( "explain" ,
+ "{" ,
+ "find" ,
+ BCON_UTF8 ( COLLECTION_NAME ),
+ "filter" ,
+ "{" ,
+ "x" ,
+ BCON_INT32 ( 1 ),
+ "}" ,
+ "}" );
+ res = mongoc_collection_command_simple (
+ collection , command , NULL , & reply , & error );
+ if ( ! res ) {
+ fprintf ( stderr , "Error with explain: %s \n " , error . message );
+ goto cleanup ;
+ }
+
+ /* Do something with the reply */
+ print_res ( & reply );
+
+cleanup :
+ bson_destroy ( & reply );
+ bson_destroy ( command );
+ return res ;
+}
+
+
+
+
+
+Running the Examples
+
+
common-operations.c
+
/*
+ * Copyright 2016 MongoDB, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+
+const char * COLLECTION_NAME = "things" ;
+
+#include "../doc-common-insert.c"
+#include "explain.c"
+
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_database_t * database = NULL ;
+ mongoc_client_t * client = NULL ;
+ mongoc_collection_t * collection = NULL ;
+ mongoc_uri_t * uri = NULL ;
+ bson_error_t error ;
+ char * host_and_port ;
+ int res = 0 ;
+
+ if ( argc < 2 || argc > 3 ) {
+ fprintf ( stderr ,
+ "usage: %s MONGOD-1-CONNECTION-STRING "
+ "[MONGOD-2-HOST-NAME:MONGOD-2-PORT] \n " ,
+ argv [ 0 ]);
+ fprintf ( stderr ,
+ "MONGOD-1-CONNECTION-STRING can be "
+ "of the following forms: \n " );
+ fprintf ( stderr , "localhost \t\t\t\t local machine \n " );
+ fprintf ( stderr , "localhost:27018 \t\t\t\t local machine on port 27018 \n " );
+ fprintf ( stderr ,
+ "mongodb://user:pass@localhost:27017 \t "
+ "local machine on port 27017, and authenticate with username "
+ "user and password pass \n " );
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_init ();
+
+ if ( strncmp ( argv [ 1 ], "mongodb://" , 10 ) == 0 ) {
+ host_and_port = bson_strdup ( argv [ 1 ]);
+ } else {
+ host_and_port = bson_strdup_printf ( "mongodb://%s" , argv [ 1 ]);
+ }
+
+ uri = mongoc_uri_new_with_error ( host_and_port , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ host_and_port ,
+ error . message );
+ res = EXIT_FAILURE ;
+ goto cleanup ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ res = EXIT_FAILURE ;
+ goto cleanup ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+ database = mongoc_client_get_database ( client , "test" );
+ collection = mongoc_database_get_collection ( database , COLLECTION_NAME );
+
+ printf ( "Inserting data \n " );
+ if ( ! insert_data ( collection )) {
+ res = EXIT_FAILURE ;
+ goto cleanup ;
+ }
+
+ printf ( "explain \n " );
+ if ( ! explain ( collection )) {
+ res = EXIT_FAILURE ;
+ goto cleanup ;
+ }
+
+cleanup :
+ if ( collection ) {
+ mongoc_collection_destroy ( collection );
+ }
+
+ if ( database ) {
+ mongoc_database_destroy ( database );
+ }
+
+ if ( client ) {
+ mongoc_client_destroy ( client );
+ }
+
+ if ( uri ) {
+ mongoc_uri_destroy ( uri );
+ }
+
+ bson_free ( host_and_port );
+ mongoc_cleanup ();
+ return res ;
+}
+
+
+
+First launch two separate instances of mongod (must be done from separate shells):
+
+ $ mkdir /tmp/db2
+$ mongod --dbpath /tmp/db2 --port 27018 # second instance
+
+
+Now compile and run the example program:
+ $ cd examples/common_operations/$ gcc -Wall -o example common-operations.c $(pkg-config --cflags --libs libmongoc-1.0)$ ./example localhost:27017 localhost:27018
+Inserting data
+explain
+{
+ "executionStats" : {
+ "allPlansExecution" : [],
+ "executionStages" : {
+ "advanced" : 19,
+ "direction" : "forward" ,
+ "docsExamined" : 76,
+ "executionTimeMillisEstimate" : 0,
+ "filter" : {
+ "x" : {
+ "$eq" : 1
+ }
+ },
+ "invalidates" : 0,
+ "isEOF" : 1,
+ "nReturned" : 19,
+ "needTime" : 58,
+ "needYield" : 0,
+ "restoreState" : 0,
+ "saveState" : 0,
+ "stage" : "COLLSCAN" ,
+ "works" : 78
+ },
+ "executionSuccess" : true,
+ "executionTimeMillis" : 0,
+ "nReturned" : 19,
+ "totalDocsExamined" : 76,
+ "totalKeysExamined" : 0
+ },
+ "ok" : 1,
+ "queryPlanner" : {
+ "indexFilterSet" : false,
+ "namespace" : "test.things",
+ "parsedQuery" : {
+ "x" : {
+ "$eq" : 1
+ }
+ },
+ "plannerVersion" : 1,
+ "rejectedPlans" : [],
+ "winningPlan" : {
+ "direction" : "forward" ,
+ "filter" : {
+ "x" : {
+ "$eq" : 1
+ }
+ },
+ "stage" : "COLLSCAN"
+ }
+ },
+ "serverInfo" : {
+ "gitVersion" : "05552b562c7a0b3143a729aaa0838e558dc49b25" ,
+ "host" : "MacBook-Pro-57.local",
+ "port" : 27017,
+ "version" : "3.2.6"
+ }
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_callbacks_destroy.html b/libmongoc/1.23.4/mongoc_apm_callbacks_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..c7c92591c9d308b9ef39f71dcf241773ee41e8b9
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_callbacks_destroy.html
@@ -0,0 +1,148 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_callbacks_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_callbacks_destroy()
+
+Synopsis
+void
+mongoc_apm_callbacks_destroy ( mongoc_apm_callbacks_t * callbacks );
+
+
+Free a mongoc_apm_callbacks_t . Does nothing if callbacks is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_callbacks_new.html b/libmongoc/1.23.4/mongoc_apm_callbacks_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..9a3406bbae725c62c80ce31f7b53476ad6565800
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_callbacks_new.html
@@ -0,0 +1,152 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_callbacks_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_callbacks_new()
+
+Synopsis
+mongoc_apm_callbacks_t *
+mongoc_apm_callbacks_new ( void ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Create a struct to hold event-notification callbacks.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_callbacks_t.html b/libmongoc/1.23.4/mongoc_apm_callbacks_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..04279a0040f0f2019831c7ef93eb282cae590cf8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_callbacks_t.html
@@ -0,0 +1,166 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_callbacks_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_callbacks_t
+Notification callbacks
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_failed_get_command_name.html b/libmongoc/1.23.4/mongoc_apm_command_failed_get_command_name.html
new file mode 100644
index 0000000000000000000000000000000000000000..7c87b9997169a665e0930acc5c7bf54979631bd4
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_failed_get_command_name.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_failed_get_command_name() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_failed_get_command_name()
+
+Synopsis
+const char *
+mongoc_apm_command_failed_get_command_name (
+ const mongoc_apm_command_failed_t * event );
+
+
+Returns this event’s command name. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+Returns
+A string that should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_failed_get_context.html b/libmongoc/1.23.4/mongoc_apm_command_failed_get_context.html
new file mode 100644
index 0000000000000000000000000000000000000000..970874363d5b057923ec631620f9a46feddcb0c5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_failed_get_context.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_failed_get_context() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_failed_get_context()
+
+Synopsis
+void *
+mongoc_apm_command_failed_get_context (
+ const mongoc_apm_command_failed_t * event );
+
+
+Returns this event’s context.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_failed_get_duration.html b/libmongoc/1.23.4/mongoc_apm_command_failed_get_duration.html
new file mode 100644
index 0000000000000000000000000000000000000000..0b0ae64539566851469521ce18e4649e2ec54323
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_failed_get_duration.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_failed_get_duration() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_failed_get_duration()
+
+Synopsis
+int64_t
+mongoc_apm_command_failed_get_duration (
+ const mongoc_apm_command_failed_t * event );
+
+
+Returns this event’s duration in microseconds.
+
+
+
+Returns
+The event’s duration.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_failed_get_error.html b/libmongoc/1.23.4/mongoc_apm_command_failed_get_error.html
new file mode 100644
index 0000000000000000000000000000000000000000..c76bd63659e1964ae2354d474b12001219178483
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_failed_get_error.html
@@ -0,0 +1,156 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_failed_get_error() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_failed_get_error()
+
+Synopsis
+void
+mongoc_apm_command_failed_get_error ( const mongoc_apm_command_failed_t * event ,
+ bson_error_t * error );
+
+
+Copies this event’s error info.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_failed_get_host.html b/libmongoc/1.23.4/mongoc_apm_command_failed_get_host.html
new file mode 100644
index 0000000000000000000000000000000000000000..0b6c758030e48eaaa47232c76519136378e77634
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_failed_get_host.html
@@ -0,0 +1,158 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_failed_get_host() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_failed_get_host()
+
+Synopsis
+const mongoc_host_list_t *
+mongoc_apm_command_failed_get_host ( const mongoc_apm_command_failed_t * event );
+
+
+Returns this event’s host. This mongoc_host_list_t is not part of a linked list, it is solely the server for this event. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_failed_get_operation_id.html b/libmongoc/1.23.4/mongoc_apm_command_failed_get_operation_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..a68b4e8eaad144f3ec2f9a298f796619637e7507
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_failed_get_operation_id.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_failed_get_operation_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_failed_get_operation_id()
+
+Synopsis
+int64_t
+mongoc_apm_command_failed_get_operation_id (
+ const mongoc_apm_command_failed_t * event );
+
+
+Returns this event’s operation id. This number correlates all the commands in a bulk operation, or all the “find” and “getMore” commands required to stream a large query result.
+
+
+
+Returns
+The event’s operation id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_failed_get_reply.html b/libmongoc/1.23.4/mongoc_apm_command_failed_get_reply.html
new file mode 100644
index 0000000000000000000000000000000000000000..70c812dd4e9de98c37da7ede87779fdaff79a784
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_failed_get_reply.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_failed_get_reply() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_failed_get_reply()
+
+Synopsis
+const bson_t *
+mongoc_apm_command_failed_get_reply (
+ const mongoc_apm_command_failed_t * event );
+
+
+Returns the server’s reply to a command that failed. The reply contains details about why the command failed. If no server reply was received, such as in the event of a network error, then the reply is a valid empty BSON document. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+Returns
+A bson_t that should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_failed_get_request_id.html b/libmongoc/1.23.4/mongoc_apm_command_failed_get_request_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..9f57660ab29da8893f3cd4f2d8b24a68002e6326
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_failed_get_request_id.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_failed_get_request_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_failed_get_request_id()
+
+Synopsis
+int64_t
+mongoc_apm_command_failed_get_request_id (
+ const mongoc_apm_command_failed_t * event );
+
+
+Returns this event’s wire-protocol request id. Use this number to correlate client-side events with server log messages.
+
+
+
+Returns
+The event’s request id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_failed_get_server_connection_id.html b/libmongoc/1.23.4/mongoc_apm_command_failed_get_server_connection_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..131e016519d559f4c727e156165d58c420636a2b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_failed_get_server_connection_id.html
@@ -0,0 +1,163 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_failed_get_server_connection_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_failed_get_server_connection_id()
+
+Synopsis
+int32_t
+mongoc_apm_command_failed_get_server_connection_id (
+ const mongoc_apm_command_failed_t * event );
+
+
+Returns this event’s context.
+Returns the server connection ID for the command. The server connection ID is
+distinct from the server ID (mongoc_apm_command_failed_get_server_id() )
+and is returned by the hello or legacy hello response as “connectionId” from the
+server on 4.2+.
+
+
+
+Returns
+The server connection ID as a positive integer or -1 if it is not available.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_failed_get_server_id.html b/libmongoc/1.23.4/mongoc_apm_command_failed_get_server_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..1fa84871212f37cf598fa7da2fb72b58dc2bbf46
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_failed_get_server_id.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_failed_get_server_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_failed_get_server_id()
+
+Synopsis
+uint32_t
+mongoc_apm_command_failed_get_server_id (
+ const mongoc_apm_command_failed_t * event );
+
+
+Returns this event’s server id.
+
+
+
+Returns
+The event’s server id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_failed_get_service_id.html b/libmongoc/1.23.4/mongoc_apm_command_failed_get_service_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..96d3eefee37a04ef6bde76720a98a12bdf1e896a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_failed_get_service_id.html
@@ -0,0 +1,154 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_failed_get_service_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_failed_get_service_id()
+
+Synopsis
+const bson_oid_t *
+mongoc_apm_command_failed_get_service_id (
+ const mongoc_apm_command_failed_t * event );
+
+
+Returns this event’s service ID, which identifies the MongoDB service behind a
+load balancer, or NULL if not connected to a load balanced cluster.
+
+
+
+Returns
+A bson_oid_t that should not be modified or freed or NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_failed_t.html b/libmongoc/1.23.4/mongoc_apm_command_failed_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..4dcf55ec60c4a289c96310da9bcb11b00ab07996
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_failed_t.html
@@ -0,0 +1,162 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_failed_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_failed_t
+Command-failed event
+
+Synopsis
+An event notification sent when the driver fails to execute a MongoDB command.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_started_get_command.html b/libmongoc/1.23.4/mongoc_apm_command_started_get_command.html
new file mode 100644
index 0000000000000000000000000000000000000000..cfeba5671e5dfd14615bb30232f976c7c5ae3510
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_started_get_command.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_started_get_command() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_started_get_command()
+
+Synopsis
+const bson_t *
+mongoc_apm_command_started_get_command (
+ const mongoc_apm_command_started_t * event );
+
+
+Returns this event’s command. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+Returns
+A bson_t that should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_started_get_command_name.html b/libmongoc/1.23.4/mongoc_apm_command_started_get_command_name.html
new file mode 100644
index 0000000000000000000000000000000000000000..88016c948b2fb27a744a2c7f61e8dd63a359941c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_started_get_command_name.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_started_get_command_name() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_started_get_command_name()
+
+Synopsis
+const char *
+mongoc_apm_command_started_get_command_name (
+ const mongoc_apm_command_started_t * event );
+
+
+Returns this event’s command name. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+Returns
+A string that should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_started_get_context.html b/libmongoc/1.23.4/mongoc_apm_command_started_get_context.html
new file mode 100644
index 0000000000000000000000000000000000000000..24a59a2d2585f6cdf5a846890643ac75e27b1fdf
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_started_get_context.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_started_get_context() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_started_get_context()
+
+Synopsis
+void *
+mongoc_apm_command_started_get_context (
+ const mongoc_apm_command_started_t * event );
+
+
+Returns this event’s context.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_started_get_database_name.html b/libmongoc/1.23.4/mongoc_apm_command_started_get_database_name.html
new file mode 100644
index 0000000000000000000000000000000000000000..efbaeb822d321130d75fb42ff8134604de6ec663
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_started_get_database_name.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_started_get_database_name() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_started_get_database_name()
+
+Synopsis
+const char *
+mongoc_apm_command_started_get_database_name (
+ const mongoc_apm_command_started_t * event );
+
+
+Returns this event’s database name. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+Returns
+A string that should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_started_get_host.html b/libmongoc/1.23.4/mongoc_apm_command_started_get_host.html
new file mode 100644
index 0000000000000000000000000000000000000000..e52f2b4e9d974606428084b46c03045996604626
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_started_get_host.html
@@ -0,0 +1,158 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_started_get_host() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_started_get_host()
+
+Synopsis
+const mongoc_host_list_t *
+mongoc_apm_command_started_get_host ( const mongoc_apm_command_started_t * event );
+
+
+Returns this event’s host. This mongoc_host_list_t is not part of a linked list, it is solely the server for this event. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_started_get_operation_id.html b/libmongoc/1.23.4/mongoc_apm_command_started_get_operation_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..4ac59cc778bad9ff6230288249b3144c6b0174e7
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_started_get_operation_id.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_started_get_operation_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_started_get_operation_id()
+
+Synopsis
+int64_t
+mongoc_apm_command_started_get_operation_id (
+ const mongoc_apm_command_started_t * event );
+
+
+Returns this event’s operation id. This number correlates all the commands in a bulk operation, or all the “find” and “getMore” commands required to stream a large query result.
+
+
+
+Returns
+The event’s operation id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_started_get_request_id.html b/libmongoc/1.23.4/mongoc_apm_command_started_get_request_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..ac68d334d1411964b07f8d8914fc60f13cf300e4
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_started_get_request_id.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_started_get_request_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_started_get_request_id()
+
+Synopsis
+int64_t
+mongoc_apm_command_started_get_request_id (
+ const mongoc_apm_command_started_t * event );
+
+
+Returns this event’s wire-protocol request id. Use this number to correlate client-side events with server log messages.
+
+
+
+Returns
+The event’s request id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_started_get_server_connection_id.html b/libmongoc/1.23.4/mongoc_apm_command_started_get_server_connection_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..defbcb54012deb5258fe9480a30098d5ee023ab7
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_started_get_server_connection_id.html
@@ -0,0 +1,162 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_started_get_server_connection_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_started_get_server_connection_id()
+
+Synopsis
+int32_t
+mongoc_apm_command_started_get_server_connection_id (
+ const mongoc_apm_command_started_t * event );
+
+
+Returns the server connection ID for the command. The server connection ID is
+distinct from the server ID (mongoc_apm_command_started_get_server_id() )
+and is returned by the hello or legacy hello response as “connectionId” from the
+server on 4.2+.
+
+
+
+Returns
+The server connection ID as a positive integer or -1 if it is not available.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_started_get_server_id.html b/libmongoc/1.23.4/mongoc_apm_command_started_get_server_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..119b133fe7d0394ae45b6321b86646771adcc94f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_started_get_server_id.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_started_get_server_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_started_get_server_id()
+
+Synopsis
+uint32_t
+mongoc_apm_command_started_get_server_id (
+ const mongoc_apm_command_started_t * event );
+
+
+Returns this event’s server id.
+
+
+
+Returns
+The event’s server id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_started_get_service_id.html b/libmongoc/1.23.4/mongoc_apm_command_started_get_service_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..887be00b0fce9ccc89b9c3319036fee906c97676
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_started_get_service_id.html
@@ -0,0 +1,154 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_started_get_service_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_started_get_service_id()
+
+Synopsis
+const bson_oid_t *
+mongoc_apm_command_started_get_service_id (
+ const mongoc_apm_command_started_t * event );
+
+
+Returns this event’s service ID, which identifies the MongoDB service behind a
+load balancer, or NULL if not connected to a load balanced cluster.
+
+
+
+Returns
+A bson_oid_t that should not be modified or freed or NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_started_t.html b/libmongoc/1.23.4/mongoc_apm_command_started_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..ea01841ec475dbdb835dbc82746e21b75f8467d8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_started_t.html
@@ -0,0 +1,161 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_started_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_started_t
+Command-started event
+
+Synopsis
+An event notification sent when the driver begins executing a MongoDB command.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_command_name.html b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_command_name.html
new file mode 100644
index 0000000000000000000000000000000000000000..45f10d18303cadbcd03fa8cba1d7edff66eded3f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_command_name.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_succeeded_get_command_name() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_succeeded_get_command_name()
+
+Synopsis
+const char *
+mongoc_apm_command_succeeded_get_command_name (
+ const mongoc_apm_command_succeeded_t * event );
+
+
+Returns this event’s command name. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+Returns
+A string that should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_context.html b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_context.html
new file mode 100644
index 0000000000000000000000000000000000000000..7665f45388edaf5ab9ea2fa7169f24e5a5b63798
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_context.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_succeeded_get_context() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_succeeded_get_context()
+
+Synopsis
+void *
+mongoc_apm_command_succeeded_get_context (
+ const mongoc_apm_command_succeeded_t * event );
+
+
+Returns this event’s context.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_duration.html b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_duration.html
new file mode 100644
index 0000000000000000000000000000000000000000..320ca7c4ad016888c2f116bb9705cda88764b5af
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_duration.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_succeeded_get_duration() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_succeeded_get_duration()
+
+Synopsis
+int64_t
+mongoc_apm_command_succeeded_get_duration (
+ const mongoc_apm_command_succeeded_t * event );
+
+
+Returns this event’s duration in microseconds.
+
+
+
+Returns
+The event’s duration.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_host.html b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_host.html
new file mode 100644
index 0000000000000000000000000000000000000000..37d645d1924ad8e278a448ba913f86cf04533247
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_host.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_succeeded_get_host() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_succeeded_get_host()
+
+Synopsis
+const mongoc_host_list_t *
+mongoc_apm_command_succeeded_get_host (
+ const mongoc_apm_command_succeeded_t * event );
+
+
+Returns this event’s host. This mongoc_host_list_t is not part of a linked list, it is solely the server for this event. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_operation_id.html b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_operation_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..454f9235c1c3bf2215df6f93304051be4be03568
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_operation_id.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_succeeded_get_operation_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_succeeded_get_operation_id()
+
+Synopsis
+int64_t
+mongoc_apm_command_succeeded_get_operation_id (
+ const mongoc_apm_command_succeeded_t * event );
+
+
+Returns this event’s operation id. This number correlates all the commands in a bulk operation, or all the “find” and “getMore” commands required to stream a large query result.
+
+
+
+Returns
+The event’s operation id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_reply.html b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_reply.html
new file mode 100644
index 0000000000000000000000000000000000000000..fd7bedd9d8e3aee80ad1e326d7928c9aec38a7f5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_reply.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_succeeded_get_reply() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_succeeded_get_reply()
+
+Synopsis
+const bson_t *
+mongoc_apm_command_succeeded_get_reply (
+ const mongoc_apm_command_succeeded_t * event );
+
+
+Returns this event’s reply. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+Returns
+A bson_t that should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_request_id.html b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_request_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..fc6c9b6abd9849083407cfd232402c9d73f636a2
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_request_id.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_succeeded_get_request_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_succeeded_get_request_id()
+
+Synopsis
+int64_t
+mongoc_apm_command_succeeded_get_request_id (
+ const mongoc_apm_command_succeeded_t * event );
+
+
+Returns this event’s wire-protocol request id. Use this number to correlate client-side events with server log messages.
+
+
+
+Returns
+The event’s request id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_server_connection_id.html b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_server_connection_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..83997e5207703070e131d5d90f8f522d973c21a9
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_server_connection_id.html
@@ -0,0 +1,162 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_succeeded_get_server_connection_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_succeeded_get_server_connection_id()
+
+Synopsis
+int32_t
+mongoc_apm_command_succeeded_get_server_connection_id (
+ const mongoc_apm_command_succeeded_t * event );
+
+
+Returns the server connection ID for the command. The server connection ID is
+distinct from the server ID
+(mongoc_apm_command_succeeded_get_server_id() ) and is returned by the
+hello or legacy hello response as “connectionId” from the server on 4.2+.
+
+
+
+Returns
+The server connection ID as a positive integer or -1 if it is not available.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_server_id.html b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_server_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..388ba92ef5612c7f039bada1592c8e30e9579226
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_server_id.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_succeeded_get_server_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_succeeded_get_server_id()
+
+Synopsis
+uint32_t
+mongoc_apm_command_succeeded_get_server_id (
+ const mongoc_apm_command_succeeded_t * event );
+
+
+Returns this event’s server id.
+
+
+
+Returns
+The event’s server id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_service_id.html b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_service_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..6baa045ca3f17bdd868c37961baa1ef35560a77a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_succeeded_get_service_id.html
@@ -0,0 +1,154 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_succeeded_get_service_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_succeeded_get_service_id()
+
+Synopsis
+const bson_oid_t *
+mongoc_apm_command_succeeded_get_service_id (
+ const mongoc_apm_command_succeeded_t * event );
+
+
+Returns this event’s service ID, which identifies the MongoDB service behind a
+load balancer, or NULL if not connected to a load balanced cluster.
+
+
+
+Returns
+A bson_oid_t that should not be modified or freed or NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_command_succeeded_t.html b/libmongoc/1.23.4/mongoc_apm_command_succeeded_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..115b1f3951f40a621c2535f86ab1c8154c038cf9
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_command_succeeded_t.html
@@ -0,0 +1,161 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_command_succeeded_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_command_succeeded_t
+Command-succeeded event
+
+Synopsis
+An event notification sent when the driver successfully executes a MongoDB command.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_changed_get_context.html b/libmongoc/1.23.4/mongoc_apm_server_changed_get_context.html
new file mode 100644
index 0000000000000000000000000000000000000000..552e33e6a1200bb9494a4bf7e391dc29a20ad635
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_changed_get_context.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_changed_get_context() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_changed_get_context()
+
+Synopsis
+void *
+mongoc_apm_server_changed_get_context (
+ const mongoc_apm_server_changed_t * event );
+
+
+Returns this event’s context.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_changed_get_host.html b/libmongoc/1.23.4/mongoc_apm_server_changed_get_host.html
new file mode 100644
index 0000000000000000000000000000000000000000..aaa88cece4e9163ac00313572cccedcebeeaeaa2
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_changed_get_host.html
@@ -0,0 +1,158 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_changed_get_host() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_changed_get_host()
+
+Synopsis
+const mongoc_host_list_t *
+mongoc_apm_server_changed_get_host ( const mongoc_apm_server_changed_t * event );
+
+
+Returns this event’s host. This mongoc_host_list_t is not part of a linked list, it is solely the server for this event. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_changed_get_new_description.html b/libmongoc/1.23.4/mongoc_apm_server_changed_get_new_description.html
new file mode 100644
index 0000000000000000000000000000000000000000..4b658e3552d3f27b8507f32fb5662e325d672ca4
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_changed_get_new_description.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_changed_get_new_description() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_changed_get_new_description()
+
+Synopsis
+const mongoc_server_description_t *
+mongoc_apm_server_changed_get_new_description (
+ const mongoc_apm_server_changed_t * event );
+
+
+Returns this event’s new description. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_changed_get_previous_description.html b/libmongoc/1.23.4/mongoc_apm_server_changed_get_previous_description.html
new file mode 100644
index 0000000000000000000000000000000000000000..09040ee13ec1090a66dc5d83a01f10ee78489ac1
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_changed_get_previous_description.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_changed_get_previous_description() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_changed_get_previous_description()
+
+Synopsis
+const mongoc_server_description_t *
+mongoc_apm_server_changed_get_previous_description (
+ const mongoc_apm_server_changed_t * event );
+
+
+Returns this event’s previous description. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_changed_get_topology_id.html b/libmongoc/1.23.4/mongoc_apm_server_changed_get_topology_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..61c89cc3d538b9ba399862a97562210bf091b845
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_changed_get_topology_id.html
@@ -0,0 +1,160 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_changed_get_topology_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_changed_get_topology_id()
+
+Synopsis
+void
+mongoc_apm_server_changed_get_topology_id (
+ const mongoc_apm_server_changed_t * event , bson_oid_t * topology_id );
+
+
+Returns this event’s topology id.
+
+
+
+Returns
+The event’s topology id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_changed_t.html b/libmongoc/1.23.4/mongoc_apm_server_changed_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..579687650b4521c3e68b6f6e41e1b40ce9386288
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_changed_t.html
@@ -0,0 +1,156 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_changed_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_changed_t
+Server-changed event
+
+Synopsis
+An event notification sent when the driver observes a change in status of a server it is connected to.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_closed_get_context.html b/libmongoc/1.23.4/mongoc_apm_server_closed_get_context.html
new file mode 100644
index 0000000000000000000000000000000000000000..0775047b9dd08bd36a16037f4b210b353bcfdd33
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_closed_get_context.html
@@ -0,0 +1,158 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_closed_get_context() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_closed_get_context()
+
+Synopsis
+void *
+mongoc_apm_server_closed_get_context ( const mongoc_apm_server_closed_t * event );
+
+
+Returns this event’s context.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_closed_get_host.html b/libmongoc/1.23.4/mongoc_apm_server_closed_get_host.html
new file mode 100644
index 0000000000000000000000000000000000000000..d966b0c7033b7c8a63c40861f286ab34ba807ade
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_closed_get_host.html
@@ -0,0 +1,158 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_closed_get_host() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_closed_get_host()
+
+Synopsis
+const mongoc_host_list_t *
+mongoc_apm_server_closed_get_host ( const mongoc_apm_server_closed_t * event );
+
+
+Returns this event’s host. This mongoc_host_list_t is not part of a linked list, it is solely the server for this event. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_closed_get_topology_id.html b/libmongoc/1.23.4/mongoc_apm_server_closed_get_topology_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..ee5f79499ffd4b7f714bb5b6511e66acca077bd0
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_closed_get_topology_id.html
@@ -0,0 +1,160 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_closed_get_topology_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_closed_get_topology_id()
+
+Synopsis
+void
+mongoc_apm_server_closed_get_topology_id (
+ const mongoc_apm_server_closed_t * event , bson_oid_t * topology_id );
+
+
+Returns this event’s topology id.
+
+
+
+Returns
+The event’s topology id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_closed_t.html b/libmongoc/1.23.4/mongoc_apm_server_closed_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..0c5c99c082570abbcfaeae47efe2a47c7e1b3d93
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_closed_t.html
@@ -0,0 +1,154 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_closed_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_closed_t
+Server-closed event
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_get_awaited.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_get_awaited.html
new file mode 100644
index 0000000000000000000000000000000000000000..b04af500587bae350820ec7565023db70fdc0c25
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_get_awaited.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_failed_get_awaited() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_failed_get_awaited()
+
+Synopsis
+bool
+mongoc_apm_server_heartbeat_failed_get_awaited (
+ const mongoc_apm_server_heartbeat_failed_t * event );
+
+
+Returns whether this event came from an awaitable hello.
+
+
+
+Returns
+A bool indicating whether the heartbeat event came from an awaitable hello.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_get_context.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_get_context.html
new file mode 100644
index 0000000000000000000000000000000000000000..a5c8d61d72d3920918d08375d8b74e2e16a59310
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_get_context.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_failed_get_context() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_failed_get_context()
+
+Synopsis
+void *
+mongoc_apm_server_heartbeat_failed_get_context (
+ const mongoc_apm_server_heartbeat_failed_t * event );
+
+
+Returns this event’s context.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_get_duration.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_get_duration.html
new file mode 100644
index 0000000000000000000000000000000000000000..29ca03638c4f928bcdbe2fe8b1a1b698ed85d9ed
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_get_duration.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_failed_get_duration() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_failed_get_duration()
+
+Synopsis
+int64_t
+mongoc_apm_server_heartbeat_failed_get_duration (
+ const mongoc_apm_server_heartbeat_failed_t * event );
+
+
+Returns this event’s duration in microseconds.
+
+
+
+Returns
+The event’s duration.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_get_error.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_get_error.html
new file mode 100644
index 0000000000000000000000000000000000000000..a82fa9582f2e8e5ab10997794c4c44b0a82706af
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_get_error.html
@@ -0,0 +1,156 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_failed_get_error() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_failed_get_error()
+
+Synopsis
+void
+mongoc_apm_server_heartbeat_failed_get_error (
+ const mongoc_apm_server_heartbeat_failed_t * event , bson_error_t * error );
+
+
+Copies this event’s error info.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_get_host.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_get_host.html
new file mode 100644
index 0000000000000000000000000000000000000000..6b679ecb0728f0cdc474e3da241feb86218d2a22
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_get_host.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_failed_get_host() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_failed_get_host()
+
+Synopsis
+const mongoc_host_list_t *
+mongoc_apm_server_heartbeat_failed_get_host (
+ const mongoc_apm_server_heartbeat_failed_t * event );
+
+
+Returns this event’s host. This mongoc_host_list_t is not part of a linked list, it is solely the server for this event. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_t.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..5e87b57e9fd2441041a26d0abc6174c84ad81438
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_failed_t.html
@@ -0,0 +1,156 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_failed_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_failed_t
+Heartbeat-failed event
+
+Synopsis
+An event notification sent when the driver failed to send a “hello” command to check the status of a server.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_started_get_awaited.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_started_get_awaited.html
new file mode 100644
index 0000000000000000000000000000000000000000..37bbd2e03627fb7c550569105d4002da9e9ab03a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_started_get_awaited.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_started_get_awaited() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_started_get_awaited()
+
+Synopsis
+bool
+mongoc_apm_server_heartbeat_started_get_awaited (
+ const mongoc_apm_server_heartbeat_started_t * event );
+
+
+Returns whether this event came from an awaitable hello.
+
+
+
+Returns
+A bool indicating whether the heartbeat event came from an awaitable hello.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_started_get_context.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_started_get_context.html
new file mode 100644
index 0000000000000000000000000000000000000000..a6ad078922134f5aeb2c697b19b764c682c06a08
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_started_get_context.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_started_get_context() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_started_get_context()
+
+Synopsis
+void *
+mongoc_apm_server_heartbeat_started_get_context (
+ const mongoc_apm_server_heartbeat_started_t * event );
+
+
+Returns this event’s context.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_started_get_host.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_started_get_host.html
new file mode 100644
index 0000000000000000000000000000000000000000..7de735c2d2debcb152b29ee848d8ce779105ea12
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_started_get_host.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_started_get_host() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_started_get_host()
+
+Synopsis
+const mongoc_host_list_t *
+mongoc_apm_server_heartbeat_started_get_host (
+ const mongoc_apm_server_heartbeat_started_t * event );
+
+
+Returns this event’s host. This mongoc_host_list_t is not part of a linked list, it is solely the server for this event. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_started_t.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_started_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..c5a77dbe46c05a902d006dfe4808455a2f9c3137
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_started_t.html
@@ -0,0 +1,154 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_started_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_started_t
+Heartbeat-started event
+
+Synopsis
+An event notification sent when the driver begins executing a “hello” command to check the status of a server.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_get_awaited.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_get_awaited.html
new file mode 100644
index 0000000000000000000000000000000000000000..3844f369751559063c9fdd6a06f864807cb852b3
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_get_awaited.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_succeeded_get_awaited() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_succeeded_get_awaited()
+
+Synopsis
+bool
+mongoc_apm_server_heartbeat_succeeded_get_awaited (
+ const mongoc_apm_server_heartbeat_succeeded_t * event );
+
+
+Returns whether this event came from an awaitable hello.
+
+
+
+Returns
+A bool indicating whether the heartbeat event came from an awaitable hello.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_get_context.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_get_context.html
new file mode 100644
index 0000000000000000000000000000000000000000..afc76744639e0f0a7b1fb79e0870d35e0f536f83
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_get_context.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_succeeded_get_context() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_succeeded_get_context()
+
+Synopsis
+void *
+mongoc_apm_server_heartbeat_succeeded_get_context (
+ const mongoc_apm_server_heartbeat_succeeded_t * event );
+
+
+Returns this event’s context.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_get_duration.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_get_duration.html
new file mode 100644
index 0000000000000000000000000000000000000000..7615962e9fd2e1d7b158d9c866fa582be1c7317e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_get_duration.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_succeeded_get_duration() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_succeeded_get_duration()
+
+Synopsis
+int64_t
+mongoc_apm_server_heartbeat_succeeded_get_duration (
+ const mongoc_apm_server_heartbeat_succeeded_t * event );
+
+
+Returns this event’s duration in microseconds.
+
+
+
+Returns
+The event’s duration.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_get_host.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_get_host.html
new file mode 100644
index 0000000000000000000000000000000000000000..f41c5cc72ef5fa4a388721b921a68bffe57707c3
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_get_host.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_succeeded_get_host() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_succeeded_get_host()
+
+Synopsis
+const mongoc_host_list_t *
+mongoc_apm_server_heartbeat_succeeded_get_host (
+ const mongoc_apm_server_heartbeat_succeeded_t * event );
+
+
+Returns this event’s host. This mongoc_host_list_t is not part of a linked list, it is solely the server for this event. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_get_reply.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_get_reply.html
new file mode 100644
index 0000000000000000000000000000000000000000..dbf3a329128a8b9d7f399d2fda2e67b966c2060d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_get_reply.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_succeeded_get_reply() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_succeeded_get_reply()
+
+Synopsis
+const bson_t *
+mongoc_apm_server_heartbeat_succeeded_get_reply (
+ const mongoc_apm_server_heartbeat_succeeded_t * event );
+
+
+Returns this event’s reply. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+Returns
+A bson_t that should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_t.html b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..52449f5bc4817edfc61614575f0e19ff3a8c18eb
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_heartbeat_succeeded_t.html
@@ -0,0 +1,156 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_heartbeat_succeeded_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_heartbeat_succeeded_t
+Heartbeat-succeeded event
+
+Synopsis
+An event notification sent when the driver completes a “hello” command to check the status of a server.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_opening_get_context.html b/libmongoc/1.23.4/mongoc_apm_server_opening_get_context.html
new file mode 100644
index 0000000000000000000000000000000000000000..9e57e3295cdad542e8d85e1683f05f52da23194a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_opening_get_context.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_opening_get_context() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_opening_get_context()
+
+Synopsis
+void *
+mongoc_apm_server_opening_get_context (
+ const mongoc_apm_server_opening_t * event );
+
+
+Returns this event’s context.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_opening_get_host.html b/libmongoc/1.23.4/mongoc_apm_server_opening_get_host.html
new file mode 100644
index 0000000000000000000000000000000000000000..f805fdeb6d36429d780930c43433a1134b2c06cf
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_opening_get_host.html
@@ -0,0 +1,158 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_opening_get_host() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_opening_get_host()
+
+Synopsis
+const mongoc_host_list_t *
+mongoc_apm_server_opening_get_host ( const mongoc_apm_server_opening_t * event );
+
+
+Returns this event’s host. This mongoc_host_list_t is not part of a linked list, it is solely the server for this event. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_opening_get_topology_id.html b/libmongoc/1.23.4/mongoc_apm_server_opening_get_topology_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..ea2678e7f7f20a602349893341dc1e0b453902b2
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_opening_get_topology_id.html
@@ -0,0 +1,160 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_opening_get_topology_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_opening_get_topology_id()
+
+Synopsis
+void
+mongoc_apm_server_opening_get_topology_id (
+ const mongoc_apm_server_opening_t * event , bson_oid_t * topology_id );
+
+
+Returns this event’s topology id.
+
+
+
+Returns
+The event’s topology id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_server_opening_t.html b/libmongoc/1.23.4/mongoc_apm_server_opening_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..f2be92af47c36969ac388d56e7243b66f81de823
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_server_opening_t.html
@@ -0,0 +1,154 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_server_opening_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_server_opening_t
+Server-opening event
+
+Synopsis
+An event notification sent when the driver adds a mongoc_server_description_t for a new server it was not monitoring before.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_set_command_failed_cb.html b/libmongoc/1.23.4/mongoc_apm_set_command_failed_cb.html
new file mode 100644
index 0000000000000000000000000000000000000000..5cb5ba162783d43a17269b139667beb6d7e0652c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_set_command_failed_cb.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_set_command_failed_cb() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_set_command_failed_cb()
+
+Synopsis
+typedef void ( * mongoc_apm_command_failed_cb_t ) (
+ const mongoc_apm_command_failed_t * event );
+
+void
+mongoc_apm_set_command_failed_cb ( mongoc_apm_callbacks_t * callbacks ,
+ mongoc_apm_command_failed_cb_t cb );
+
+
+Receive an event notification whenever the driver fails to execute a MongoDB operation.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_set_command_started_cb.html b/libmongoc/1.23.4/mongoc_apm_set_command_started_cb.html
new file mode 100644
index 0000000000000000000000000000000000000000..ff057f6f6273ecfec2ecf77ea1d439c89d47b53a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_set_command_started_cb.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_set_command_started_cb() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_set_command_started_cb()
+
+Synopsis
+typedef void ( * mongoc_apm_command_started_cb_t ) (
+ const mongoc_apm_command_started_t * event );
+
+void
+mongoc_apm_set_command_started_cb ( mongoc_apm_callbacks_t * callbacks ,
+ mongoc_apm_command_started_cb_t cb );
+
+
+Receive an event notification whenever the driver starts a MongoDB operation.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_set_command_succeeded_cb.html b/libmongoc/1.23.4/mongoc_apm_set_command_succeeded_cb.html
new file mode 100644
index 0000000000000000000000000000000000000000..617caa02b4faa4e047096045348be97ad07041cf
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_set_command_succeeded_cb.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_set_command_succeeded_cb() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_set_command_succeeded_cb()
+
+Synopsis
+typedef void ( * mongoc_apm_command_succeeded_cb_t ) (
+ const mongoc_apm_command_succeeded_t * event );
+
+void
+mongoc_apm_set_command_succeeded_cb ( mongoc_apm_callbacks_t * callbacks ,
+ mongoc_apm_command_succeeded_cb_t cb );
+
+
+Receive an event notification whenever the driver completes a MongoDB operation.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_set_server_changed_cb.html b/libmongoc/1.23.4/mongoc_apm_set_server_changed_cb.html
new file mode 100644
index 0000000000000000000000000000000000000000..4f37d2b92bcf4e48d0c41502fa3b626c943d533f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_set_server_changed_cb.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_set_server_changed_cb() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_set_server_changed_cb()
+
+Synopsis
+typedef void ( * mongoc_apm_server_changed_cb_t ) (
+ const mongoc_apm_server_changed_t * event );
+
+void
+mongoc_apm_set_server_changed_cb ( mongoc_apm_callbacks_t * callbacks ,
+ mongoc_apm_server_changed_cb_t cb );
+
+
+Receive an event notification whenever the driver observes a change in status of a server it is connected to.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_set_server_closed_cb.html b/libmongoc/1.23.4/mongoc_apm_set_server_closed_cb.html
new file mode 100644
index 0000000000000000000000000000000000000000..05aff153a1a4b2e19f3c0d47a9e1025bc45d4cdb
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_set_server_closed_cb.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_set_server_closed_cb() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_set_server_closed_cb()
+
+Synopsis
+typedef void ( * mongoc_apm_server_closed_cb_t ) (
+ const mongoc_apm_server_closed_t * event );
+
+void
+mongoc_apm_set_server_closed_cb ( mongoc_apm_callbacks_t * callbacks ,
+ mongoc_apm_server_closed_cb_t cb );
+
+
+Receive an event notification whenever the driver stops monitoring a server and removes its mongoc_server_description_t .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_set_server_heartbeat_failed_cb.html b/libmongoc/1.23.4/mongoc_apm_set_server_heartbeat_failed_cb.html
new file mode 100644
index 0000000000000000000000000000000000000000..966dbc0edcbc5957e1abcb10db2868f74d081b4b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_set_server_heartbeat_failed_cb.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_set_server_heartbeat_failed_cb() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_set_server_heartbeat_failed_cb()
+
+Synopsis
+typedef void ( * mongoc_apm_server_heartbeat_failed_cb_t ) (
+ const mongoc_apm_server_heartbeat_failed_t * event );
+
+void
+mongoc_apm_set_server_heartbeat_failed_cb ( mongoc_apm_callbacks_t * callbacks ,
+ mongoc_apm_server_heartbeat_failed_cb_t cb );
+
+
+Receive an event notification whenever the driver fails to send a “hello” command to check the status of a server.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_set_server_heartbeat_started_cb.html b/libmongoc/1.23.4/mongoc_apm_set_server_heartbeat_started_cb.html
new file mode 100644
index 0000000000000000000000000000000000000000..80d7d56993d492f611c9d302f2974d28c95b01c9
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_set_server_heartbeat_started_cb.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_set_server_heartbeat_started_cb() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_set_server_heartbeat_started_cb()
+
+Synopsis
+typedef void ( * mongoc_apm_server_heartbeat_started_cb_t ) (
+ const mongoc_apm_server_heartbeat_started_t * event );
+
+void
+mongoc_apm_set_server_heartbeat_started_cb ( mongoc_apm_callbacks_t * callbacks ,
+ mongoc_apm_server_heartbeat_started_cb_t cb );
+
+
+Receive an event notification whenever the driver begins executing a “hello” command to check the status of a server.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_set_server_heartbeat_succeeded_cb.html b/libmongoc/1.23.4/mongoc_apm_set_server_heartbeat_succeeded_cb.html
new file mode 100644
index 0000000000000000000000000000000000000000..5c8c4cc08371365c83c3dde216c757e18518c973
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_set_server_heartbeat_succeeded_cb.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_set_server_heartbeat_succeeded_cb() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_set_server_heartbeat_succeeded_cb()
+
+Synopsis
+typedef void ( * mongoc_apm_server_heartbeat_succeeded_cb_t ) (
+ const mongoc_apm_server_heartbeat_succeeded_t * event );
+
+void
+mongoc_apm_set_server_heartbeat_succeeded_cb ( mongoc_apm_callbacks_t * callbacks ,
+ mongoc_apm_server_heartbeat_succeeded_cb_t cb );
+
+
+Receive an event notification whenever the driver completes a “hello” command to check the status of a server.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_set_server_opening_cb.html b/libmongoc/1.23.4/mongoc_apm_set_server_opening_cb.html
new file mode 100644
index 0000000000000000000000000000000000000000..1f719ac4bf68570fd752a221529e6cafa4c5c13a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_set_server_opening_cb.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_set_server_opening_cb() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_set_server_opening_cb()
+
+Synopsis
+typedef void ( * mongoc_apm_server_opening_cb_t ) (
+ const mongoc_apm_server_opening_t * event );
+
+void
+mongoc_apm_set_server_opening_cb ( mongoc_apm_callbacks_t * callbacks ,
+ mongoc_apm_server_opening_cb_t cb );
+
+
+Receive an event notification whenever the driver adds a mongoc_server_description_t for a new server it was not monitoring before.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_set_topology_changed_cb.html b/libmongoc/1.23.4/mongoc_apm_set_topology_changed_cb.html
new file mode 100644
index 0000000000000000000000000000000000000000..8b0c87f37642d5ea0ccd65abec7f73f84d704e48
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_set_topology_changed_cb.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_set_topology_changed_cb() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_set_topology_changed_cb()
+
+Synopsis
+typedef void ( * mongoc_apm_topology_changed_cb_t ) (
+ const mongoc_apm_topology_changed_t * event );
+
+void
+mongoc_apm_set_topology_changed_cb ( mongoc_apm_callbacks_t * callbacks ,
+ mongoc_apm_topology_changed_cb_t cb );
+
+
+Receive an event notification whenever the driver observes a change in any of the servers it is connected to or a change in the overall server topology.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_set_topology_closed_cb.html b/libmongoc/1.23.4/mongoc_apm_set_topology_closed_cb.html
new file mode 100644
index 0000000000000000000000000000000000000000..b6709e31fb398113c7e820c9d2b95147714840c4
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_set_topology_closed_cb.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_set_topology_closed_cb() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_set_topology_closed_cb()
+
+Synopsis
+typedef void ( * mongoc_apm_topology_closed_cb_t ) (
+ const mongoc_apm_topology_closed_t * event );
+
+void
+mongoc_apm_set_topology_closed_cb ( mongoc_apm_callbacks_t * callbacks ,
+ mongoc_apm_topology_closed_cb_t cb );
+
+
+Receive an event notification whenever the driver stops monitoring a server topology and destroys its mongoc_topology_description_t .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_set_topology_opening_cb.html b/libmongoc/1.23.4/mongoc_apm_set_topology_opening_cb.html
new file mode 100644
index 0000000000000000000000000000000000000000..71d4ca4088897c87540bb1e1a8f1472f555b923d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_set_topology_opening_cb.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_set_topology_opening_cb() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_set_topology_opening_cb()
+
+Synopsis
+typedef void ( * mongoc_apm_topology_opening_cb_t ) (
+ const mongoc_apm_topology_opening_t * event );
+
+void
+mongoc_apm_set_topology_opening_cb ( mongoc_apm_callbacks_t * callbacks ,
+ mongoc_apm_topology_opening_cb_t cb );
+
+
+Receive an event notification whenever the driver initializes a mongoc_topology_description_t .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_topology_changed_get_context.html b/libmongoc/1.23.4/mongoc_apm_topology_changed_get_context.html
new file mode 100644
index 0000000000000000000000000000000000000000..d8ccd98aa3991b5bd44b8b22a2c3ec3d45ba10c9
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_topology_changed_get_context.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_topology_changed_get_context() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_topology_changed_get_context()
+
+Synopsis
+void *
+mongoc_apm_topology_changed_get_context (
+ const mongoc_apm_topology_changed_t * event );
+
+
+Returns this event’s context.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_topology_changed_get_new_description.html b/libmongoc/1.23.4/mongoc_apm_topology_changed_get_new_description.html
new file mode 100644
index 0000000000000000000000000000000000000000..e2e226902bf1701c29e7ec6c892fa1615506168f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_topology_changed_get_new_description.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_topology_changed_get_new_description() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_topology_changed_get_new_description()
+
+Synopsis
+const mongoc_topology_description_t *
+mongoc_apm_topology_changed_get_new_description (
+ const mongoc_apm_topology_changed_t * event );
+
+
+Returns this event’s new description. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_topology_changed_get_previous_description.html b/libmongoc/1.23.4/mongoc_apm_topology_changed_get_previous_description.html
new file mode 100644
index 0000000000000000000000000000000000000000..92c7420f4555f826c3b2ebf063c7faef17f81d46
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_topology_changed_get_previous_description.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_topology_changed_get_previous_description() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_topology_changed_get_previous_description()
+
+Synopsis
+const mongoc_topology_description_t *
+mongoc_apm_topology_changed_get_previous_description (
+ const mongoc_apm_topology_changed_t * event );
+
+
+Returns this event’s previous description. The data is only valid in the scope of the callback that receives this event; copy it if it will be accessed after the callback returns.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_topology_changed_get_topology_id.html b/libmongoc/1.23.4/mongoc_apm_topology_changed_get_topology_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..356e1ccb436f07e20ad55d39e73cb21f27849110
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_topology_changed_get_topology_id.html
@@ -0,0 +1,160 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_topology_changed_get_topology_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_topology_changed_get_topology_id()
+
+Synopsis
+void
+mongoc_apm_topology_changed_get_topology_id (
+ const mongoc_apm_topology_changed_t * event , bson_oid_t * topology_id );
+
+
+Returns this event’s topology id.
+
+
+
+Returns
+The event’s topology id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_topology_changed_t.html b/libmongoc/1.23.4/mongoc_apm_topology_changed_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..2b316a41ba093fa1f555223c9366402dc165ece5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_topology_changed_t.html
@@ -0,0 +1,155 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_topology_changed_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_topology_changed_t
+Topology-changed event
+
+Synopsis
+An event notification sent when the driver observes a change in any of the servers it is connected to or a change in the overall server topology.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_topology_closed_get_context.html b/libmongoc/1.23.4/mongoc_apm_topology_closed_get_context.html
new file mode 100644
index 0000000000000000000000000000000000000000..9eb956361517cf4d25db0d4a753b9979e122dfda
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_topology_closed_get_context.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_topology_closed_get_context() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_topology_closed_get_context()
+
+Synopsis
+void *
+mongoc_apm_topology_closed_get_context (
+ const mongoc_apm_topology_closed_t * event );
+
+
+Returns this event’s context.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_topology_closed_get_topology_id.html b/libmongoc/1.23.4/mongoc_apm_topology_closed_get_topology_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..e64acf78daff78eee3f3fa1615f294c9e7609366
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_topology_closed_get_topology_id.html
@@ -0,0 +1,160 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_topology_closed_get_topology_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_topology_closed_get_topology_id()
+
+Synopsis
+void
+mongoc_apm_topology_closed_get_topology_id (
+ const mongoc_apm_topology_closed_t * event , bson_oid_t * topology_id );
+
+
+Returns this event’s topology id.
+
+
+
+Returns
+The event’s topology id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_topology_closed_t.html b/libmongoc/1.23.4/mongoc_apm_topology_closed_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..7ce552bedd837a33845961adba89d74d3aaf791a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_topology_closed_t.html
@@ -0,0 +1,153 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_topology_closed_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_topology_closed_t
+Topology-closed event
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_topology_opening_get_context.html b/libmongoc/1.23.4/mongoc_apm_topology_opening_get_context.html
new file mode 100644
index 0000000000000000000000000000000000000000..8a60b8306f6790ef9793a432cb347062acc83971
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_topology_opening_get_context.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_topology_opening_get_context() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_topology_opening_get_context()
+
+Synopsis
+void *
+mongoc_apm_topology_opening_get_context (
+ const mongoc_apm_topology_opening_t * event );
+
+
+Returns this event’s context.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_topology_opening_get_topology_id.html b/libmongoc/1.23.4/mongoc_apm_topology_opening_get_topology_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..0ccd255ed7b55cf7ec9a9a64357be2b83673e58e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_topology_opening_get_topology_id.html
@@ -0,0 +1,156 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_topology_opening_get_topology_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_topology_opening_get_topology_id()
+
+Synopsis
+void
+mongoc_apm_topology_opening_get_topology_id (
+ const mongoc_apm_topology_opening_t * event , bson_oid_t * topology_id );
+
+
+Returns this event’s topology id.
+
+
+
+Returns
+The event’s topology id.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_apm_topology_opening_t.html b/libmongoc/1.23.4/mongoc_apm_topology_opening_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..9b64b0d29ac861b28be286c68a85e6bfb8b11b49
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_apm_topology_opening_t.html
@@ -0,0 +1,153 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_apm_topology_opening_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_apm_topology_opening_t
+Topology-opening event
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_auto_encryption_opts_destroy.html b/libmongoc/1.23.4/mongoc_auto_encryption_opts_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..c832d979bafa5e8288f6063f9ad1650f3104f592
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_auto_encryption_opts_destroy.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_auto_encryption_opts_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_auto_encryption_opts_destroy()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_auto_encryption_opts_new.html b/libmongoc/1.23.4/mongoc_auto_encryption_opts_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..47f65495e6758966f1ac14377ca7ff4bebb71632
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_auto_encryption_opts_new.html
@@ -0,0 +1,218 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_auto_encryption_opts_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_auto_encryption_opts_new()
+
+Synopsis
+mongoc_auto_encryption_opts_t *
+mongoc_auto_encryption_opts_new ( void ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Create a new mongoc_auto_encryption_opts_t .
+Caller must set the required options:
+
+Caller may set optionally set the following:
+
+This options struct is used to enable auto encryption with mongoc_client_enable_auto_encryption() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_bypass_auto_encryption.html b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_bypass_auto_encryption.html
new file mode 100644
index 0000000000000000000000000000000000000000..f3f89074d3550db8874351329c591b87d7173a42
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_bypass_auto_encryption.html
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_auto_encryption_opts_set_bypass_auto_encryption() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_auto_encryption_opts_set_bypass_auto_encryption()
+
+Synopsis
+void
+mongoc_auto_encryption_opts_set_bypass_auto_encryption (
+ mongoc_auto_encryption_opts_t * opts , bool bypass_auto_encryption );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_bypass_query_analysis.html b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_bypass_query_analysis.html
new file mode 100644
index 0000000000000000000000000000000000000000..336b7d15e5c858fb84de60d571bf82947d4ea1ac
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_bypass_query_analysis.html
@@ -0,0 +1,218 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_auto_encryption_opts_set_bypass_query_analysis() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_auto_encryption_opts_set_bypass_query_analysis()
+
+Synopsis
+void
+mongoc_auto_encryption_opts_set_bypass_query_analysis (
+ mongoc_auto_encryption_opts_t * opts , bool bypass_query_analysis );
+
+
+
+
Important
+
This API is part of the experimental
+Queryable Encryption API and may be subject
+to breaking changes in future releases.
+
+
+
New in version 1.22.0.
+
+
+
+Parameters
+
+bypass_query_analysis disables automatic analysis of outgoing commands.
+bypass_query_analysis is useful for encrypting indexed fields without the
+crypt_shared library or mongocryptd process. Set
+bypass_query_analysis to true to use explicit encryption on indexed fields.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_encrypted_fields_map.html b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_encrypted_fields_map.html
new file mode 100644
index 0000000000000000000000000000000000000000..6e86fcdb5fb658c9d051cfde6829e4526440092a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_encrypted_fields_map.html
@@ -0,0 +1,215 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_auto_encryption_opts_set_encrypted_fields_map() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_auto_encryption_opts_set_encrypted_fields_map()
+
+Synopsis
+void
+mongoc_auto_encryption_opts_set_encrypted_fields_map (
+ mongoc_auto_encryption_opts_t * opts , const bson_t * encrypted_fields_map );
+
+
+
+
Important
+
This API is part of the experimental
+Queryable Encryption API and may be subject
+to breaking changes in future releases.
+
+
+
New in version 1.22.0.
+
+
+
+Parameters
+
+Supplying an encrypted_fields_map provides more security than relying on an encryptedFields obtained from the server. It protects against a malicious server advertising a false encryptedFields .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_extra.html b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_extra.html
new file mode 100644
index 0000000000000000000000000000000000000000..e6be286b5cc0456ec19cd11acb1d45fbb104e992
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_extra.html
@@ -0,0 +1,244 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_auto_encryption_opts_set_extra() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_keyvault_client.html b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_keyvault_client.html
new file mode 100644
index 0000000000000000000000000000000000000000..67c6ecf5271028b061903ef8c97a2697d5f85ec8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_keyvault_client.html
@@ -0,0 +1,209 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_auto_encryption_opts_set_keyvault_client() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_auto_encryption_opts_set_keyvault_client()
+
+Synopsis
+void
+mongoc_auto_encryption_opts_set_keyvault_client (
+ mongoc_auto_encryption_opts_t * opts , mongoc_client_t * client );
+
+
+Set an optional separate mongoc_client_t to use during key lookup for automatic encryption and decryption. Only applies to automatic encryption on a single-threaded mongoc_client_t .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_keyvault_client_pool.html b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_keyvault_client_pool.html
new file mode 100644
index 0000000000000000000000000000000000000000..d69252038a85b27b91d03c95cbb576b8a81c2783
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_keyvault_client_pool.html
@@ -0,0 +1,209 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_auto_encryption_opts_set_keyvault_client_pool() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_auto_encryption_opts_set_keyvault_client_pool()
+
+Synopsis
+void
+mongoc_auto_encryption_opts_set_keyvault_client_pool (
+ mongoc_auto_encryption_opts_t * opts , mongoc_client_pool_t * pool );
+
+
+Set an optional separate mongoc_client_pool_t to use during key lookup for automatic encryption and decryption. Only applies to automatic encryption on a mongoc_client_pool_t . It is invalid to set this for automatic encryption on a single-threaded mongoc_client_t .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_keyvault_namespace.html b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_keyvault_namespace.html
new file mode 100644
index 0000000000000000000000000000000000000000..0ad6bff9ea65466525d7fa794ea905465b0ab2c2
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_keyvault_namespace.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_auto_encryption_opts_set_keyvault_namespace() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_auto_encryption_opts_set_keyvault_namespace()
+
+Synopsis
+void
+mongoc_auto_encryption_opts_set_keyvault_namespace (
+ mongoc_auto_encryption_opts_t * opts , const char * db , const char * coll );
+
+
+Set the database and collection name of the key vault. The key vault is the specially designated collection containing encrypted data keys for Client-Side Field Level Encryption .
+
+
+Parameters
+
+opts : The mongoc_auto_encryption_opts_t
+db : A const char * representing the database name of the key vault collection.
+coll : A const char * representing the collection name of the key vault collection.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_kms_credential_provider_callback.html b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_kms_credential_provider_callback.html
new file mode 100644
index 0000000000000000000000000000000000000000..fe79bb806bc84999703e779fb92ddaa8d8a88f6c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_kms_credential_provider_callback.html
@@ -0,0 +1,211 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_auto_encryption_opts_set_kms_credential_provider_callback() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_auto_encryption_opts_set_kms_credential_provider_callback()
+
+
New in version 1.23.0.
+
+
+Synopsis
+void
+mongoc_auto_encryption_opts_set_kms_credential_provider_callback (
+ mongoc_auto_encryption_opts_t * opts ,
+ mongoc_kms_credentials_provider_callback_fn fn ,
+ void * userdata );
+
+
+Set the user-provided callback to provide KMS credentials on-demand when they
+are needed.
+
+
+Parameters
+
+opts - The options object to update.
+fn - The provider callback to set on the options object. May be NULL
+to clear the callback. Refer to:
+mongoc_kms_credentials_provider_callback_fn
+userdata - An arbitrary pointer that will be passed along to the
+callback function when it is called by libmongoc.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_kms_providers.html b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_kms_providers.html
new file mode 100644
index 0000000000000000000000000000000000000000..d96a699542155a04541eefdb8b91b6affc2ef47b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_kms_providers.html
@@ -0,0 +1,242 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_auto_encryption_opts_set_kms_providers() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_auto_encryption_opts_set_kms_providers()
+
+Synopsis
+void
+mongoc_auto_encryption_opts_set_kms_providers (
+ mongoc_auto_encryption_opts_t * opts , const bson_t * kms_providers );
+
+
+
+
+Parameters
+
+kms_providers is a BSON document containing configuration for each KMS provider. Currently aws , local , azure , gcp , and kmip are supported. At least one must be specified.
+The format for “aws” is as follows:
+aws : {
+ accessKeyId : String ,
+ secretAccessKey : String
+}
+
+
+The format for “local” is as follows:
+local : {
+ key : < 96 byte BSON binary of subtype 0 > or String /* The master key used to encrypt/decrypt data keys. May be passed as a base64 encoded string. */
+}
+
+
+The format for “azure” is as follows:
+azure : {
+ tenantId : String ,
+ clientId : String ,
+ clientSecret : String ,
+ identityPlatformEndpoint : Optional < String > /* Defaults to login.microsoftonline.com */
+}
+
+
+The format for “gcp” is as follows:
+gcp : {
+ email : String ,
+ privateKey : byte [] or String , /* May be passed as a base64 encoded string. */
+ endpoint : Optional < String > /* Defaults to oauth2.googleapis.com */
+}
+
+
+The format for “kmip” is as follows:
+kmip : {
+ endpoint : String
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_schema_map.html b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_schema_map.html
new file mode 100644
index 0000000000000000000000000000000000000000..b975a0886f9d4a0ecbdc9e9c43311e61613ca894
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_schema_map.html
@@ -0,0 +1,231 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_auto_encryption_opts_set_schema_map() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_auto_encryption_opts_set_schema_map()
+
+Synopsis
+void
+mongoc_auto_encryption_opts_set_schema_map ( mongoc_auto_encryption_opts_t * opts ,
+ const bson_t * schema_map );
+
+
+
+
+Parameters
+
+Supplying a schema map provides more security than relying on JSON Schemas obtained from the server. It protects against a malicious server advertising a false JSON Schema, which could trick the client into sending unencrypted data that should be encrypted.
+Schemas supplied in the schema map only apply to configuring automatic encryption for client side encryption. Other validation rules in the JSON schema will not be enforced by the driver and will result in an error.
+The following is an example of a schema map which configures automatic encryption for the collection db.coll :
+{
+ "db.coll" : {
+ "properties" : {
+ "encrypted_string" : {
+ "encrypt" : {
+ "keyId" : [
+ {
+ "$binary" : {
+ "base64" : "AAAAAAAAAAAAAAAAAAAAAA==" ,
+ "subType" : "04"
+ }
+ }
+ ],
+ "bsonType" : "string" ,
+ "algorithm" : "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
+ }
+ }
+ },
+ "bsonType" : "object"
+ }
+ }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_tls_opts.html b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_tls_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..c2f0bba8f15929f112eb52b52c689dc5c3cc7782
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_auto_encryption_opts_set_tls_opts.html
@@ -0,0 +1,234 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_auto_encryption_opts_set_tls_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_auto_encryption_opts_set_tls_opts()
+
+Synopsis
+void
+mongoc_auto_encryption_opts_set_tls_opts (
+ mongoc_auto_encryption_opts_t * opts , const bson_t * tls_opts );
+
+
+
+
+Parameters
+
+tls_opts is a BSON document of the following form:
+< KMS provider name >: {
+ tlsCaFile : Optional < String >
+ tlsCertificateKeyFile : Optional < String >
+ tlsCertificateKeyFilePassword : Optional < String >
+}
+
+
+The KMS providers aws , azure , gcp , and kmip are supported as keys in the tls_opts document.
+tls_opts maps the KMS provider name to a BSON document for TLS options.
+The BSON document for TLS options may contain the following keys:
+
+
+
Example use
+
mongoc_auto_encryption_opts_t * ae_opts =
+ mongoc_auto_encryption_opts_new ();
+bson_t * tls_opts = bson_new ();
+
+BCON_APPEND ( tls_opts , "kmip" , "{" , MONGOC_URI_TLSCAFILE , "ca1.pem" , "}" );
+BCON_APPEND ( tls_opts , "aws" , "{" , MONGOC_URI_TLSCAFILE , "ca2.pem" , "}" );
+mongoc_auto_encryption_opts_set_tls_opts ( ae_opts , tls_opts );
+
+
+
+See Configuring TLS for a description of the behavior of these options.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_auto_encryption_opts_t.html b/libmongoc/1.23.4/mongoc_auto_encryption_opts_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..ea97be838a4dfdc7c0a8ed51704336b1d7cc444c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_auto_encryption_opts_t.html
@@ -0,0 +1,213 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_auto_encryption_opts_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_auto_encryption_opts_t
+Options for enabling automatic encryption and decryption for Client-Side Field Level Encryption .
+
+Synopsis
+typedef struct _mongoc_auto_encryption_opts_t mongoc_auto_encryption_opts_t ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_delete.html b/libmongoc/1.23.4/mongoc_bulk_operation_delete.html
new file mode 100644
index 0000000000000000000000000000000000000000..f534084666df72af01237b4e9dcfa9479445d9f2
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_delete.html
@@ -0,0 +1,218 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_delete() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_delete()
+
+Synopsis
+void
+mongoc_bulk_operation_delete ( mongoc_bulk_operation_t * bulk ,
+ const bson_t * selector );
+
+
+Deletes documents as part of a bulk operation. This only queues the operation. To execute it, call mongoc_bulk_operation_execute() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_delete_one.html b/libmongoc/1.23.4/mongoc_bulk_operation_delete_one.html
new file mode 100644
index 0000000000000000000000000000000000000000..0c8ddaf3a97039ac252e48bd64047c5333b1c878
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_delete_one.html
@@ -0,0 +1,218 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_delete_one() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_delete_one()
+
+Synopsis
+void
+mongoc_bulk_operation_delete_one ( mongoc_bulk_operation_t * bulk ,
+ const bson_t * selector );
+
+
+Delete a single document as part of a bulk operation. This only queues the operation. To execute it, call mongoc_bulk_operation_execute() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_destroy.html b/libmongoc/1.23.4/mongoc_bulk_operation_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..3ee8d52e013b4d966ca0c267dbb5c7974306d55f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_destroy.html
@@ -0,0 +1,195 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_destroy()
+
+Synopsis
+void
+mongoc_bulk_operation_destroy ( mongoc_bulk_operation_t * bulk );
+
+
+Destroys a mongoc_bulk_operation_t and frees the structure. Does nothing if bulk is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_execute.html b/libmongoc/1.23.4/mongoc_bulk_operation_execute.html
new file mode 100644
index 0000000000000000000000000000000000000000..3bea1e2080534c256091ca90df824c7aaf56cd61
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_execute.html
@@ -0,0 +1,223 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_execute() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_execute()
+
+Synopsis
+uint32_t
+mongoc_bulk_operation_execute ( mongoc_bulk_operation_t * bulk ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+This function executes all operations queued into the bulk operation. Unless ordered: false was specified in the opts passed to mongoc_collection_create_bulk_operation_with_opts() , then forward progress will be stopped upon the first error.
+It is only valid to call mongoc_bulk_operation_execute() once. The mongoc_bulk_operation_t must be destroyed afterwards.
+
+
Warning
+
reply is always initialized, even upon failure. Callers must call bson_destroy() to release this potential allocation.
+
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+On success, returns the server id used. On failure, returns 0 and sets error .
+A write concern timeout or write concern error is considered a failure.
+The reply document counts operations and collects error information. See Bulk Write Operations for examples.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_get_hint.html b/libmongoc/1.23.4/mongoc_bulk_operation_get_hint.html
new file mode 100644
index 0000000000000000000000000000000000000000..f2fb6e0724051338a87211e4741f7add30135571
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_get_hint.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_get_hint() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_get_hint()
+
+Synopsis
+uint32_t
+mongoc_bulk_operation_get_hint ( const mongoc_bulk_operation_t * bulk );
+
+
+
+
+
+Description
+Retrieves the opaque id of the server used for the operation.
+(The function name includes the old term “hint” for the sake of backward compatibility, but we now call this number a “server id”.)
+This number is zero until the driver actually uses a server in mongoc_bulk_operation_execute() . The server id is the same number as the return value of a successful mongoc_bulk_operation_execute() , so mongoc_bulk_operation_get_hint is useful mainly in case mongoc_bulk_operation_execute() fails and returns zero.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_get_write_concern.html b/libmongoc/1.23.4/mongoc_bulk_operation_get_write_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..0be9551135d90842b35d026d3e3541055449a369
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_get_write_concern.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_get_write_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_get_write_concern()
+
+Synopsis
+const mongoc_write_concern_t *
+mongoc_bulk_operation_get_write_concern ( const mongoc_bulk_operation_t * bulk );
+
+
+
+
+
+Description
+Fetches the write concern to be used for bulk .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_insert.html b/libmongoc/1.23.4/mongoc_bulk_operation_insert.html
new file mode 100644
index 0000000000000000000000000000000000000000..f5d47a6709c27ae55e77cf020feabe40f21bb343
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_insert.html
@@ -0,0 +1,208 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_insert() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_insert()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_insert_with_opts.html b/libmongoc/1.23.4/mongoc_bulk_operation_insert_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..c2b2397c1b3fe33db0b40d80be11eb10b8d20496
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_insert_with_opts.html
@@ -0,0 +1,212 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_insert_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_insert_with_opts()
+
+Synopsis
+bool
+mongoc_bulk_operation_insert_with_opts ( mongoc_bulk_operation_t * bulk ,
+ const bson_t * document ,
+ const bson_t * opts ,
+ bson_error_t * error ); /* OUT */
+
+
+Queue an insert of a single document into a bulk operation. The insert is not performed until mongoc_bulk_operation_execute() is called.
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+
+Returns
+Returns true on success, and false if passed invalid arguments.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_remove.html b/libmongoc/1.23.4/mongoc_bulk_operation_remove.html
new file mode 100644
index 0000000000000000000000000000000000000000..901829fca950c438924e67a5d1f40a9c2eaebb03
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_remove.html
@@ -0,0 +1,214 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_remove() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_remove()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_remove_many_with_opts.html b/libmongoc/1.23.4/mongoc_bulk_operation_remove_many_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..1cd9554973f7cdcf1a4ac061d6b9f0571986b017
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_remove_many_with_opts.html
@@ -0,0 +1,222 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_remove_many_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_remove_many_with_opts()
+
+Synopsis
+bool
+mongoc_bulk_operation_remove_many_with_opts ( mongoc_bulk_operation_t * bulk ,
+ const bson_t * selector ,
+ const bson_t * opts ,
+ bson_error_t * error ); /* OUT */
+
+
+Delete documents as part of a bulk operation. This only queues the operation. To execute it, call mongoc_bulk_operation_execute() .
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+
+Returns
+Returns true on success, and false if passed invalid arguments.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_remove_one.html b/libmongoc/1.23.4/mongoc_bulk_operation_remove_one.html
new file mode 100644
index 0000000000000000000000000000000000000000..21ef082aa37e341413451344c993baba4698fce6
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_remove_one.html
@@ -0,0 +1,211 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_remove_one() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_remove_one()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_remove_one_with_opts.html b/libmongoc/1.23.4/mongoc_bulk_operation_remove_one_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..feb0e8443baf771049be03aa1e39ba70762e421e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_remove_one_with_opts.html
@@ -0,0 +1,222 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_remove_one_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_remove_one_with_opts()
+
+Synopsis
+bool
+mongoc_bulk_operation_remove_one_with_opts ( mongoc_bulk_operation_t * bulk ,
+ const bson_t * selector ,
+ const bson_t * opts ,
+ bson_error_t * error ); /* OUT */
+
+
+Remove a single document as part of a bulk operation. This only queues the operation. To execute it, call mongoc_bulk_operation_execute() .
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+
+Returns
+Returns true on success, and false if passed invalid arguments.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_replace_one.html b/libmongoc/1.23.4/mongoc_bulk_operation_replace_one.html
new file mode 100644
index 0000000000000000000000000000000000000000..9b0a392273723273d459075533cc41f0fdc6a91e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_replace_one.html
@@ -0,0 +1,216 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_replace_one() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_replace_one()
+
+
+Parameters
+
+bulk : A mongoc_bulk_operation_t .
+selector : A bson_t that selects which document to remove.
+document : A bson_t containing the replacement document.
+upsert : true if this should be an upsert .
+
+
+
Warning
+
document may not contain fields with keys containing . or $ .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_replace_one_with_opts.html b/libmongoc/1.23.4/mongoc_bulk_operation_replace_one_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..ee108e88642d1d0c5fce151358ad52481bccf94e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_replace_one_with_opts.html
@@ -0,0 +1,230 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_replace_one_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_replace_one_with_opts()
+
+Synopsis
+bool
+mongoc_bulk_operation_replace_one_with_opts ( mongoc_bulk_operation_t * bulk ,
+ const bson_t * selector ,
+ const bson_t * document ,
+ const bson_t * opts ,
+ bson_error_t * error ); /* OUT */
+
+
+Replace a single document as part of a bulk operation. This only queues the operation. To execute it, call mongoc_bulk_operation_execute() .
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+validate : Construct a bitwise-or of all desired bson_validate_flags_t . Set to false to skip client-side validation of the provided BSON documents.
+collation : Configure textual comparisons. See Setting Collation Order , and the MongoDB Manual entry on Collation . Collation requires MongoDB 3.2 or later, otherwise an error is returned.
+hint : A document or string that specifies the index to use to support the query predicate.
+upsert : If true, insert a document if none match selector .
+
+
+
Warning
+
document may not contain fields with keys containing . or $ .
+
+
+
+
+Returns
+Returns true on success, and false if passed invalid arguments.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_set_bypass_document_validation.html b/libmongoc/1.23.4/mongoc_bulk_operation_set_bypass_document_validation.html
new file mode 100644
index 0000000000000000000000000000000000000000..637dfd67bda8ef885f8b309dd8728e1b3ca8a065
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_set_bypass_document_validation.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_set_bypass_document_validation() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_set_bypass_document_validation()
+
+Synopsis
+void
+mongoc_bulk_operation_set_bypass_document_validation (
+ mongoc_bulk_operation_t * bulk , bool bypass );
+
+
+
+
+
+Description
+Will bypass document validation for all operations part of this bulk .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_set_client_session.html b/libmongoc/1.23.4/mongoc_bulk_operation_set_client_session.html
new file mode 100644
index 0000000000000000000000000000000000000000..8408dc7208c62d1f933bc6b72ce9b8ef64caee0b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_set_client_session.html
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_set_client_session() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_set_client_session()
+
+Synopsis
+void
+mongoc_bulk_operation_set_client_session (
+ mongoc_bulk_operation_t * bulk ,
+ mongoc_client_session_t * client_session );
+
+
+Sets an explicit client session to use for the bulk operation.
+It is an error to use a session for unacknowledged writes.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_set_comment.html b/libmongoc/1.23.4/mongoc_bulk_operation_set_comment.html
new file mode 100644
index 0000000000000000000000000000000000000000..e147a24b223f8437959aa0b82457d8bafe965cae
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_set_comment.html
@@ -0,0 +1,201 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_set_comment() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_set_hint.html b/libmongoc/1.23.4/mongoc_bulk_operation_set_hint.html
new file mode 100644
index 0000000000000000000000000000000000000000..80c90d4d5bac91a72e0f9db4e491760b69078ea8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_set_hint.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_set_hint() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_set_hint()
+
+Synopsis
+void
+mongoc_bulk_operation_set_hint ( const mongoc_bulk_operation_t * bulk ,
+ uint32_t server_id );
+
+
+
+
+
+Description
+Specifies which server to use for the operation. This function has an effect only if called before mongoc_bulk_operation_execute() .
+(The function name includes the old term “hint” for the sake of backward compatibility, but we now call this number a “server id”.)
+Use mongoc_bulk_operation_set_hint only for building a language driver that wraps the C Driver. When writing applications in C, leave the server id unset and allow the driver to choose a suitable server for the bulk operation.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_set_let.html b/libmongoc/1.23.4/mongoc_bulk_operation_set_let.html
new file mode 100644
index 0000000000000000000000000000000000000000..ee063ce19e169dec7c5410094ba6cb0ee8708c1c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_set_let.html
@@ -0,0 +1,201 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_set_let() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_set_let()
+
+Synopsis
+void
+mongoc_bulk_operation_set_let (
+ mongoc_bulk_operation_t * bulk , const bson_t * let );
+
+
+
+
+Parameters
+
+bulk : A mongoc_bulk_operation_t .
+let : A BSON document consisting of any number of parameter names, each followed by definitions of constants in the MQL Aggregate Expression language.
+
+
+
+Description
+Defines constants that can be accessed by all update, replace, and delete operations executed as part of this bulk .
+It is prohibited to call this function after adding operations to the bulk .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_t.html b/libmongoc/1.23.4/mongoc_bulk_operation_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..9d692f544e5223a8f02e9b99300eec783e3a4386
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_t.html
@@ -0,0 +1,229 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_t
+Bulk Write Operations
+
+Synopsis
+typedef struct _mongoc_bulk_operation_t mongoc_bulk_operation_t ;
+
+
+The opaque type mongoc_bulk_operation_t provides an abstraction for submitting multiple write operations as a single batch.
+After adding all of the write operations to the mongoc_bulk_operation_t , call mongoc_bulk_operation_execute() to execute the operation.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_update.html b/libmongoc/1.23.4/mongoc_bulk_operation_update.html
new file mode 100644
index 0000000000000000000000000000000000000000..35f68ff5f81a621d9e7c5d546452fa1f42d08853
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_update.html
@@ -0,0 +1,216 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_update() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_update()
+
+
+Parameters
+
+bulk : A mongoc_bulk_operation_t .
+selector : A bson_t that selects which documents to remove.
+document : A bson_t containing the update document.
+upsert : true if an upsert should be performed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_update_many_with_opts.html b/libmongoc/1.23.4/mongoc_bulk_operation_update_many_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..8150f7a61ca9884e4168a169da8b882aba281dd8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_update_many_with_opts.html
@@ -0,0 +1,228 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_update_many_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_update_many_with_opts()
+
+Synopsis
+bool
+mongoc_bulk_operation_update_many_with_opts ( mongoc_bulk_operation_t * bulk ,
+ const bson_t * selector ,
+ const bson_t * document ,
+ const bson_t * opts ,
+ bson_error_t * error ); /* OUT */
+
+
+This function queues an update as part of a bulk operation. This does not execute the operation. To execute the entirety of the bulk operation call mongoc_bulk_operation_execute() .
+
+
Warning
+
document MUST only contain fields whose key starts with $ . See the update document specification for more details.
+
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+validate : Construct a bitwise-or of all desired bson_validate_flags_t . Set to false to skip client-side validation of the provided BSON documents.
+collation : Configure textual comparisons. See Setting Collation Order , and the MongoDB Manual entry on Collation . Collation requires MongoDB 3.2 or later, otherwise an error is returned.
+hint : A document or string that specifies the index to use to support the query predicate.
+upsert : If true, insert a document if none match selector .
+arrayFilters : An array of filters specifying to which array elements an update should apply.
+
+
+
+
+Returns
+Returns true on success, and false if there is a server or network error or if passed invalid arguments.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_update_one.html b/libmongoc/1.23.4/mongoc_bulk_operation_update_one.html
new file mode 100644
index 0000000000000000000000000000000000000000..b885e947b3957770e69317a864097ae96712d19c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_update_one.html
@@ -0,0 +1,215 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_update_one() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_update_one()
+
+Synopsis
+void
+mongoc_bulk_operation_update_one ( mongoc_bulk_operation_t * bulk ,
+ const bson_t * selector ,
+ const bson_t * document ,
+ bool upsert );
+
+
+This function queues an update as part of a bulk operation. It will only modify a single document on the MongoDB server. This function does not execute the operation. To execute the entirety of the bulk operation call mongoc_bulk_operation_execute() .
+This function is superseded by mongoc_bulk_operation_update_one_with_opts() .
+
+
+Parameters
+
+bulk : A mongoc_bulk_operation_t .
+selector : A bson_t that selects which document to remove.
+document : A bson_t containing the update document.
+upsert : true if an upsert should be performed.
+
+
+
Warning
+
document must only contain fields whose key starts with $ . See the update document specification for more details.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_bulk_operation_update_one_with_opts.html b/libmongoc/1.23.4/mongoc_bulk_operation_update_one_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..b0effc70a3291508cf06bb68e108b90ca82c46e6
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_bulk_operation_update_one_with_opts.html
@@ -0,0 +1,228 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_bulk_operation_update_one_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_bulk_operation_update_one_with_opts()
+
+Synopsis
+bool
+mongoc_bulk_operation_update_one_with_opts ( mongoc_bulk_operation_t * bulk ,
+ const bson_t * selector ,
+ const bson_t * document ,
+ const bson_t * opts ,
+ bson_error_t * error ); /* OUT */
+
+
+This function queues an update as part of a bulk operation. It will only modify a single document on the MongoDB server. This function does not execute the operation. To execute the entirety of the bulk operation call mongoc_bulk_operation_execute() .
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+validate : Construct a bitwise-or of all desired bson_validate_flags_t . Set to false to skip client-side validation of the provided BSON documents.
+collation : Configure textual comparisons. See Setting Collation Order , and the MongoDB Manual entry on Collation . Collation requires MongoDB 3.2 or later, otherwise an error is returned.
+hint : A document or string that specifies the index to use to support the query predicate.
+upsert : If true, insert a document if none match selector .
+arrayFilters : An array of filters specifying to which array elements an update should apply.
+
+
+
Warning
+
document must only contain fields whose key starts with $ . See the update document specification for more details.
+
+
+
+
+Returns
+Returns true on success, and false if there is a server or network error or if passed invalid arguments.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_change_stream_destroy.html b/libmongoc/1.23.4/mongoc_change_stream_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..ec8dd4af58368ad456d3631b935ba66a99258b90
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_change_stream_destroy.html
@@ -0,0 +1,195 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_change_stream_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_change_stream_destroy()
+
+Synopsis
+void
+mongoc_change_stream_destroy ( mongoc_change_stream_t * stream );
+
+
+Destroys a change stream and associated data.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_change_stream_error_document.html b/libmongoc/1.23.4/mongoc_change_stream_error_document.html
new file mode 100644
index 0000000000000000000000000000000000000000..5f696d1695c57b67e6b7d22333beb9919b7ae028
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_change_stream_error_document.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_change_stream_error_document() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_change_stream_error_document()
+
+Synopsis
+bool
+mongoc_change_stream_error_document ( mongoc_change_stream_t * stream ,
+ bson_error_t * err ,
+ const bson_t ** reply );
+
+
+Checks if an error has occurred when creating or iterating over a change stream.
+Similar to mongoc_cursor_error_document() if the error has occurred
+client-side then the reply will be set to an empty BSON document. If the
+error occurred server-side, reply is set to the server’s reply document.
+
+
+
+Returns
+A boolean indicating if there was an error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_change_stream_get_resume_token.html b/libmongoc/1.23.4/mongoc_change_stream_get_resume_token.html
new file mode 100644
index 0000000000000000000000000000000000000000..2d4a00ddc14519a528b69bdd8f6aee1794163bba
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_change_stream_get_resume_token.html
@@ -0,0 +1,211 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_change_stream_get_resume_token() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_change_stream_get_resume_token()
+
+Synopsis
+const bson_t *
+mongoc_change_stream_get_resume_token ( mongoc_change_stream_t * stream );
+
+
+This function returns the cached resume token, which may be passed as either the
+resumeAfter or startAfter option of a watch function to start a new
+change stream from the same point.
+
+
+
+Returns
+A bson_t that should not be modified or freed.
+Returns NULL if no resume token is available. This is possible if the change
+stream has not been iterated and neither resumeAfter nor startAfter
+options were specified in the watch function.
+
+
+Lifecycle
+The returned bson_t is valid for the lifetime of stream and
+its data may be updated if mongoc_change_stream_next() is called after
+this function. The value may be copied to extend its lifetime or preserve the
+current resume token.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_change_stream_next.html b/libmongoc/1.23.4/mongoc_change_stream_next.html
new file mode 100644
index 0000000000000000000000000000000000000000..638cc2bcc44673a3b1def41df9f57f70f5584c3e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_change_stream_next.html
@@ -0,0 +1,214 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_change_stream_next() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_change_stream_next()
+
+Synopsis
+bool
+mongoc_change_stream_next ( mongoc_change_stream_t * stream ,
+ const bson_t ** bson );
+
+
+This function iterates the underlying cursor, setting bson to the next
+document. This will block for a maximum of maxAwaitTimeMS milliseconds as
+specified in the options when created, or the default timeout if omitted. Data
+may be returned before the timeout. If no data is returned this function returns
+false .
+
+
+
+Returns
+This function returns true if a valid bson document was read from the stream.
+Otherwise, false if there was an error or no document was available.
+Errors can be determined with the mongoc_change_stream_error_document()
+function.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_change_stream_t.html b/libmongoc/1.23.4/mongoc_change_stream_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..a12ee726fda4ab69a75703dda361835f5a8f987d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_change_stream_t.html
@@ -0,0 +1,575 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_change_stream_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_change_stream_t
+
+
+Example
+
+
example-collection-watch.c
+
#include <mongoc/mongoc.h>
+
+int
+main ()
+{
+ bson_t empty = BSON_INITIALIZER ;
+ const bson_t * doc ;
+ bson_t * to_insert = BCON_NEW ( "x" , BCON_INT32 ( 1 ));
+ const bson_t * err_doc ;
+ bson_error_t error ;
+ const char * uri_string ;
+ mongoc_uri_t * uri ;
+ mongoc_client_t * client ;
+ mongoc_collection_t * coll ;
+ mongoc_change_stream_t * stream ;
+ mongoc_write_concern_t * wc = mongoc_write_concern_new ();
+ bson_t opts = BSON_INITIALIZER ;
+ bool r ;
+
+ mongoc_init ();
+
+ uri_string = "mongodb://"
+ "localhost:27017,localhost:27018,localhost:"
+ "27019/db?replicaSet=rs0" ;
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ coll = mongoc_client_get_collection ( client , "db" , "coll" );
+ stream = mongoc_collection_watch ( coll , & empty , NULL );
+
+ mongoc_write_concern_set_wmajority ( wc , 10000 );
+ mongoc_write_concern_append ( wc , & opts );
+ r = mongoc_collection_insert_one ( coll , to_insert , & opts , NULL , & error );
+ if ( ! r ) {
+ fprintf ( stderr , "Error: %s \n " , error . message );
+ return EXIT_FAILURE ;
+ }
+
+ while ( mongoc_change_stream_next ( stream , & doc )) {
+ char * as_json = bson_as_relaxed_extended_json ( doc , NULL );
+ fprintf ( stderr , "Got document: %s \n " , as_json );
+ bson_free ( as_json );
+ }
+
+ if ( mongoc_change_stream_error_document ( stream , & error , & err_doc )) {
+ if ( ! bson_empty ( err_doc )) {
+ fprintf ( stderr ,
+ "Server Error: %s \n " ,
+ bson_as_relaxed_extended_json ( err_doc , NULL ));
+ } else {
+ fprintf ( stderr , "Client Error: %s \n " , error . message );
+ }
+ return EXIT_FAILURE ;
+ }
+
+ bson_destroy ( to_insert );
+ mongoc_write_concern_destroy ( wc );
+ bson_destroy ( & opts );
+ mongoc_change_stream_destroy ( stream );
+ mongoc_collection_destroy ( coll );
+ mongoc_uri_destroy ( uri );
+ mongoc_client_destroy ( client );
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+
+Starting and Resuming
+All watch functions accept several options to indicate where a change stream should start returning changes from: resumeAfter , startAfter , and startAtOperationTime .
+All changes returned by mongoc_change_stream_next() include a resume token in the _id field. MongoDB 4.2 also includes an additional resume token in each “aggregate” and “getMore” command response, which points to the end of that response’s batch. The current token is automatically cached by libmongoc. In the event of an error, libmongoc attempts to recreate the change stream starting where it left off by passing the cached resume token. libmongoc only attempts to resume once, but client applications can access the cached resume token with mongoc_change_stream_get_resume_token() and use it for their own resume logic by passing it as either the resumeAfter or startAfter option.
+Additionally, change streams can start returning changes at an operation time by using the startAtOperationTime field. This can be the timestamp returned in the operationTime field of a command reply.
+resumeAfter , startAfter , and startAtOperationTime are mutually exclusive options. Setting more than one will result in a server error.
+The following example implements custom resuming logic, persisting the resume token in a file.
+
+
example-resume.c
+
#include <mongoc/mongoc.h>
+
+/* An example implementation of custom resume logic in a change stream.
+* example-resume starts a client-wide change stream and persists the resume
+* token in a file "resume-token.json". On restart, if "resume-token.json"
+* exists, the change stream starts watching after the persisted resume token.
+*
+* This behavior allows a user to exit example-resume, and restart it later
+* without missing any change events.
+*/
+#include <unistd.h>
+
+static const char * RESUME_TOKEN_PATH = "resume-token.json" ;
+
+static bool
+_save_resume_token ( const bson_t * doc )
+{
+ FILE * file_stream ;
+ bson_iter_t iter ;
+ bson_t resume_token_doc ;
+ char * as_json = NULL ;
+ size_t as_json_len ;
+ ssize_t r , n_written ;
+ const bson_value_t * resume_token ;
+
+ if ( ! bson_iter_init_find ( & iter , doc , "_id" )) {
+ fprintf ( stderr , "reply does not contain operationTime." );
+ return false ;
+ }
+ resume_token = bson_iter_value ( & iter );
+ /* store the resume token in a document, { resumeAfter: <resume token> }
+ * which we can later append easily. */
+ file_stream = fopen ( RESUME_TOKEN_PATH , "w+" );
+ if ( ! file_stream ) {
+ fprintf ( stderr , "failed to open %s for writing \n " , RESUME_TOKEN_PATH );
+ return false ;
+ }
+ bson_init ( & resume_token_doc );
+ BSON_APPEND_VALUE ( & resume_token_doc , "resumeAfter" , resume_token );
+ as_json = bson_as_canonical_extended_json ( & resume_token_doc , & as_json_len );
+ bson_destroy ( & resume_token_doc );
+ n_written = 0 ;
+ while ( n_written < as_json_len ) {
+ r = fwrite (( void * ) ( as_json + n_written ),
+ sizeof ( char ),
+ as_json_len - n_written ,
+ file_stream );
+ if ( r == -1 ) {
+ fprintf ( stderr , "failed to write to %s \n " , RESUME_TOKEN_PATH );
+ bson_free ( as_json );
+ fclose ( file_stream );
+ return false ;
+ }
+ n_written += r ;
+ }
+
+ bson_free ( as_json );
+ fclose ( file_stream );
+ return true ;
+}
+
+bool
+_load_resume_token ( bson_t * opts )
+{
+ bson_error_t error ;
+ bson_json_reader_t * reader ;
+ bson_t doc ;
+
+ /* if the file does not exist, skip. */
+ if ( -1 == access ( RESUME_TOKEN_PATH , R_OK )) {
+ return true ;
+ }
+ reader = bson_json_reader_new_from_file ( RESUME_TOKEN_PATH , & error );
+ if ( ! reader ) {
+ fprintf ( stderr ,
+ "failed to open %s for reading: %s \n " ,
+ RESUME_TOKEN_PATH ,
+ error . message );
+ return false ;
+ }
+
+ bson_init ( & doc );
+ if ( -1 == bson_json_reader_read ( reader , & doc , & error )) {
+ fprintf ( stderr , "failed to read doc from %s \n " , RESUME_TOKEN_PATH );
+ bson_destroy ( & doc );
+ bson_json_reader_destroy ( reader );
+ return false ;
+ }
+
+ printf ( "found cached resume token in %s, resuming change stream. \n " ,
+ RESUME_TOKEN_PATH );
+
+ bson_concat ( opts , & doc );
+ bson_destroy ( & doc );
+ bson_json_reader_destroy ( reader );
+ return true ;
+}
+
+int
+main ()
+{
+ int exit_code = EXIT_FAILURE ;
+ const char * uri_string ;
+ mongoc_uri_t * uri = NULL ;
+ bson_error_t error ;
+ mongoc_client_t * client = NULL ;
+ bson_t pipeline = BSON_INITIALIZER ;
+ bson_t opts = BSON_INITIALIZER ;
+ mongoc_change_stream_t * stream = NULL ;
+ const bson_t * doc ;
+
+ const int max_time = 30 ; /* max amount of time, in seconds, that
+ mongoc_change_stream_next can block. */
+
+ mongoc_init ();
+ uri_string = "mongodb://localhost:27017/db?replicaSet=rs0" ;
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ goto cleanup ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ goto cleanup ;
+ }
+
+ if ( ! _load_resume_token ( & opts )) {
+ goto cleanup ;
+ }
+ BSON_APPEND_INT64 ( & opts , "maxAwaitTimeMS" , max_time * 1000 );
+
+ printf ( "listening for changes on the client (max %d seconds). \n " , max_time );
+ stream = mongoc_client_watch ( client , & pipeline , & opts );
+
+ while ( mongoc_change_stream_next ( stream , & doc )) {
+ char * as_json ;
+
+ as_json = bson_as_canonical_extended_json ( doc , NULL );
+ printf ( "change received: %s \n " , as_json );
+ bson_free ( as_json );
+ if ( ! _save_resume_token ( doc )) {
+ goto cleanup ;
+ }
+ }
+
+ exit_code = EXIT_SUCCESS ;
+
+cleanup :
+ mongoc_uri_destroy ( uri );
+ bson_destroy ( & pipeline );
+ bson_destroy ( & opts );
+ mongoc_change_stream_destroy ( stream );
+ mongoc_client_destroy ( client );
+ mongoc_cleanup ();
+ return exit_code ;
+}
+
+
+
+The following example shows using startAtOperationTime to synchronize a change stream with another operation.
+
+
example-start-at-optime.c
+
/* An example of starting a change stream with startAtOperationTime. */
+#include <mongoc/mongoc.h>
+
+int
+main ()
+{
+ int exit_code = EXIT_FAILURE ;
+ const char * uri_string ;
+ mongoc_uri_t * uri = NULL ;
+ bson_error_t error ;
+ mongoc_client_t * client = NULL ;
+ mongoc_collection_t * coll = NULL ;
+ bson_t pipeline = BSON_INITIALIZER ;
+ bson_t opts = BSON_INITIALIZER ;
+ mongoc_change_stream_t * stream = NULL ;
+ bson_iter_t iter ;
+ const bson_t * doc ;
+ bson_value_t cached_operation_time = { 0 };
+ int i ;
+ bool r ;
+
+ mongoc_init ();
+ uri_string = "mongodb://localhost:27017/db?replicaSet=rs0" ;
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ goto cleanup ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ goto cleanup ;
+ }
+
+ /* insert five documents. */
+ coll = mongoc_client_get_collection ( client , "db" , "coll" );
+ for ( i = 0 ; i < 5 ; i ++ ) {
+ bson_t reply ;
+ bson_t * insert_cmd = BCON_NEW ( "insert" ,
+ "coll" ,
+ "documents" ,
+ "[" ,
+ "{" ,
+ "x" ,
+ BCON_INT64 ( i ),
+ "}" ,
+ "]" );
+
+ r = mongoc_collection_write_command_with_opts (
+ coll , insert_cmd , NULL , & reply , & error );
+ bson_destroy ( insert_cmd );
+ if ( ! r ) {
+ bson_destroy ( & reply );
+ fprintf ( stderr , "failed to insert: %s \n " , error . message );
+ goto cleanup ;
+ }
+ if ( i == 0 ) {
+ /* cache the operation time in the first reply. */
+ if ( bson_iter_init_find ( & iter , & reply , "operationTime" )) {
+ bson_value_copy ( bson_iter_value ( & iter ), & cached_operation_time );
+ } else {
+ fprintf ( stderr , "reply does not contain operationTime." );
+ bson_destroy ( & reply );
+ goto cleanup ;
+ }
+ }
+ bson_destroy ( & reply );
+ }
+
+ /* start a change stream at the first returned operationTime. */
+ BSON_APPEND_VALUE ( & opts , "startAtOperationTime" , & cached_operation_time );
+ stream = mongoc_collection_watch ( coll , & pipeline , & opts );
+
+ /* since the change stream started at the operation time of the first
+ * insert, the five inserts are returned. */
+ printf ( "listening for changes on db.coll: \n " );
+ while ( mongoc_change_stream_next ( stream , & doc )) {
+ char * as_json ;
+
+ as_json = bson_as_canonical_extended_json ( doc , NULL );
+ printf ( "change received: %s \n " , as_json );
+ bson_free ( as_json );
+ }
+
+ exit_code = EXIT_SUCCESS ;
+
+cleanup :
+ mongoc_uri_destroy ( uri );
+ bson_destroy ( & pipeline );
+ bson_destroy ( & opts );
+ if ( cached_operation_time . value_type ) {
+ bson_value_destroy ( & cached_operation_time );
+ }
+ mongoc_change_stream_destroy ( stream );
+ mongoc_collection_destroy ( coll );
+ mongoc_client_destroy ( client );
+ mongoc_cleanup ();
+ return exit_code ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_check_version.html b/libmongoc/1.23.4/mongoc_check_version.html
new file mode 100644
index 0000000000000000000000000000000000000000..76a57f45360218dfa6c9e280d75aea40c63c6f77
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_check_version.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_check_version() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_check_version()
+
+Synopsis
+bool
+mongoc_check_version ( int required_major ,
+ int required_minor ,
+ int required_micro );
+
+
+
+
+Parameters
+
+required_major : The minimum major version required.
+required_minor : The minimum minor version required.
+required_micro : The minimum micro version required.
+
+
+
+Returns
+True if libmongoc’s version is greater than or equal to the required version.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cleanup.html b/libmongoc/1.23.4/mongoc_cleanup.html
new file mode 100644
index 0000000000000000000000000000000000000000..9e9aba33edfdfeb326ceba05916e6d00cff9ca58
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cleanup.html
@@ -0,0 +1,194 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cleanup() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cleanup()
+
+Synopsis
+void
+mongoc_cleanup ( void );
+
+
+
+
+Description
+Initialize the MongoDB C Driver by calling mongoc_init() exactly once at the beginning of your program. It is responsible for initializing global state such as process counters, SSL, and threading primitives.
+Exception to this is mongoc_log_set_handler() , which should be called before mongoc_init() or some log traces would not use your log handling function. See Custom Log Handlers for a detailed example.
+Call mongoc_cleanup() exactly once at the end of your program to release all memory and other resources allocated by the driver. You must not call any other MongoDB C Driver functions after mongoc_cleanup() . Note that mongoc_init() does not reinitialize the driver after mongoc_cleanup() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_command.html b/libmongoc/1.23.4/mongoc_client_command.html
new file mode 100644
index 0000000000000000000000000000000000000000..234a873c6ee86ffd2ec2505e4c7da66249cde4ae
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_command.html
@@ -0,0 +1,223 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_command() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_command()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_client_command ( mongoc_client_t * client ,
+ const char * db_name ,
+ mongoc_query_flags_t flags ,
+ uint32_t skip ,
+ uint32_t limit ,
+ uint32_t batch_size ,
+ const bson_t * query ,
+ const bson_t * fields ,
+ const mongoc_read_prefs_t * read_prefs )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+This function is superseded by mongoc_client_command_with_opts() , mongoc_client_read_command_with_opts() , mongoc_client_write_command_with_opts() , and mongoc_client_read_write_command_with_opts() .
+This function is not considered a retryable read operation.
+
+
+
+Parameters
+
+client : A mongoc_client_t .
+db_name : The name of the database to run the command on.
+flags : Unused.
+skip : Unused.
+limit : Unused.
+batch_size : Unused.
+query : A bson_t containing the command specification.
+fields : Unused.
+read_prefs : An optional mongoc_read_prefs_t . Otherwise, the command uses mode MONGOC_READ_PRIMARY .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_command_simple.html b/libmongoc/1.23.4/mongoc_client_command_simple.html
new file mode 100644
index 0000000000000000000000000000000000000000..6fdb871625aae87d8caacdef2f107b6e993cedab
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_command_simple.html
@@ -0,0 +1,219 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_command_simple() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_command_simple()
+
+Synopsis
+bool
+mongoc_client_command_simple ( mongoc_client_t * client ,
+ const char * db_name ,
+ const bson_t * command ,
+ const mongoc_read_prefs_t * read_prefs ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+This is a simplified interface to mongoc_client_command() . It returns the first document from the result cursor into reply . The client’s read preference, read concern, and write concern are not applied to the command.
+
+
Warning
+
reply is always set, and should be released with bson_destroy() .
+
+This function is not considered a retryable read operation.
+
+
+Parameters
+
+client : A mongoc_client_t .
+db_name : The name of the database to run the command on.
+command : A bson_t containing the command specification.
+read_prefs : An optional mongoc_read_prefs_t . Otherwise, the command uses mode MONGOC_READ_PRIMARY .
+reply : A location for the resulting document.
+error : An optional location for a bson_error_t or NULL .
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+This function does not check the server response for a write concern error or write concern timeout.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_command_simple_with_server_id.html b/libmongoc/1.23.4/mongoc_client_command_simple_with_server_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..f550a0927eb9fc3c768a150771bb27e41e0a53d0
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_command_simple_with_server_id.html
@@ -0,0 +1,213 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_command_simple_with_server_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_command_simple_with_server_id()
+
+Synopsis
+bool
+mongoc_client_command_simple_with_server_id (
+ mongoc_client_t * client ,
+ const char * db_name ,
+ const bson_t * command ,
+ const mongoc_read_prefs_t * read_prefs ,
+ uint32_t server_id ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+This function executes a command on a specific server, using the database and command specification provided.
+This function is not considered a retryable read operation.
+
+
+Parameters
+
+client : A mongoc_client_t .
+db_name : The name of the database to run the command on.
+read_prefs : An optional mongoc_read_prefs_t .
+server_id : An opaque id specifying which server to use.
+reply : An optional location for a bson_t which will store the server’s reply.
+error : An optional location for a bson_error_t or a NULL .
+
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+This function does not check the server response for a write concern error or write concern timeout.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_command_with_opts.html b/libmongoc/1.23.4/mongoc_client_command_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..3bd4033f3ac0f05b01ff0f7f02a728c2b1c4e8ee
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_command_with_opts.html
@@ -0,0 +1,256 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_command_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_command_with_opts()
+
+Synopsis
+bool
+mongoc_client_command_with_opts (
+ mongoc_client_t * client ,
+ const char * db_name ,
+ const bson_t * command ,
+ const mongoc_read_prefs_t * read_prefs ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+Execute a command on the server, interpreting opts according to the MongoDB server version. To send a raw command to the server without any of this logic, use mongoc_client_command_simple() .
+Read preferences, read and write concern, and collation can be overridden by various sources. The highest-priority sources for these options are listed first:
+
+
+Read Preferences
+Read Concern
+Write Concern
+Collation
+
+
+
+read_prefs
+opts
+opts
+opts
+
+Transaction
+Transaction
+Transaction
+
+
+
+
+In a transaction, read concern and write concern are prohibited in opts and the read preference must be primary or NULL.
+See the example for transactions and for the “distinct” command with opts .
+reply is always initialized, and must be freed with bson_destroy() .
+This function is not considered a retryable read operation.
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+The reply is not parsed for a write concern timeout or write concern error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_destroy.html b/libmongoc/1.23.4/mongoc_client_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..c8f70e9071b2c887779431fea49db48eaa9ae440
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_destroy.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_destroy()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_enable_auto_encryption.html b/libmongoc/1.23.4/mongoc_client_enable_auto_encryption.html
new file mode 100644
index 0000000000000000000000000000000000000000..a1497bdea34a5af475ef39a344b766822a432f11
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_enable_auto_encryption.html
@@ -0,0 +1,222 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_enable_auto_encryption() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_enable_auto_encryption()
+
+Synopsis
+bool
+mongoc_client_enable_auto_encryption ( mongoc_client_t * client ,
+ mongoc_auto_encryption_opts_t * opts ,
+ bson_error_t * error );
+
+
+Enable automatic client side encryption on a mongoc_client_t . Requires libmongoc to be built with support for Client-Side Field Level Encryption. See the guide for Using Client-Side Field Level Encryption .
+Automatic encryption is an enterprise only feature that only applies to operations on a collection. Automatic encryption is not supported for operations on a database or view, and operations that are not bypassed will result in error. To bypass automatic encryption for all operations, bypass automatic encryption with mongoc_auto_encryption_opts_set_bypass_auto_encryption() in opts .
+Automatic encryption requires the authenticated user to have the listCollections privilege action .
+Enabling automatic encryption reduces the maximum message size and may have a negative performance impact.
+Only applies to a single-threaded mongoc_client_t . To use with client pools, see mongoc_client_pool_enable_auto_encryption() .
+
+
+
+Returns
+True on success. False on error. On error, error is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_add_key_alt_name.html b/libmongoc/1.23.4/mongoc_client_encryption_add_key_alt_name.html
new file mode 100644
index 0000000000000000000000000000000000000000..74da8c23d0002685c4bfb6f3b2e1a776075ecb37
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_add_key_alt_name.html
@@ -0,0 +1,214 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_add_key_alt_name() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_add_key_alt_name()
+
+Synopsis
+bool
+mongoc_client_encryption_add_key_alt_name (
+ mongoc_client_encryption_t * client_encryption ,
+ const bson_value_t * keyid ,
+ const char * keyaltname ,
+ bson_t * key_doc ,
+ bson_error_t * error );
+
+
+Add keyaltname to the set of alternate names in the key document with UUID keyid .
+
+
+Parameters
+
+client_encryption : A mongoc_client_encryption_t .
+keyid : A UUID (BSON binary subtype 0x04) key ID of the key to add the key alternate name to.
+keyaltname : The key alternate name to add.
+key_doc : Optional. An uninitialized bson_t set to the value of the key document before addition of the alternate name, or an empty document if the key does not exist. Must be freed by bson_destroy() .
+error : Optional. bson_error_t .
+
+
+
+Returns
+Returns true if successful. Returns false and sets error otherwise.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_create_datakey.html b/libmongoc/1.23.4/mongoc_client_encryption_create_datakey.html
new file mode 100644
index 0000000000000000000000000000000000000000..478066f9e195d73cf5a1a7cd9d20b1d5114ff13a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_create_datakey.html
@@ -0,0 +1,216 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_create_datakey() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_create_datakey()
+
+
+
+Returns
+Returns true if successful. Returns false and sets error otherwise.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_destroy.html b/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..e4c6bc0cc352425e5af910241274718c2e50a5b8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_destroy.html
@@ -0,0 +1,195 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_datakey_opts_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_datakey_opts_destroy()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_new.html b/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..5ec5c36f2172f42edc65c7bf30cae66495befc69
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_new.html
@@ -0,0 +1,192 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_datakey_opts_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_datakey_opts_new()
+
+Synopsis
+mongoc_client_encryption_datakey_opts_t *
+mongoc_client_encryption_datakey_opts_new ( void ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_set_keyaltnames.html b/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_set_keyaltnames.html
new file mode 100644
index 0000000000000000000000000000000000000000..c686708f8467ab9ef2b0423d65416db0e94ce650
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_set_keyaltnames.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_datakey_opts_set_keyaltnames() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_datakey_opts_set_keyaltnames()
+
+Synopsis
+void
+mongoc_client_encryption_datakey_opts_set_keyaltnames (
+ mongoc_client_encryption_datakey_opts_t * opts ,
+ char ** keyaltnames ,
+ uint32_t keyaltnames_count );
+
+
+Sets a list of alternate name strings that can be used to identify a data key. Key alternate names must be unique.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_set_keymaterial.html b/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_set_keymaterial.html
new file mode 100644
index 0000000000000000000000000000000000000000..8e8fd19daec8b2d5c7b62bcac70e5ed11c07d5ac
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_set_keymaterial.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_datakey_opts_set_keymaterial() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_datakey_opts_set_keymaterial()
+
+Synopsis
+void
+mongoc_client_encryption_datakey_opts_set_keymaterial (
+ mongoc_client_encryption_datakey_opts_t * opts ,
+ const uint8_t * data ,
+ uint32_t len );
+
+
+Sets the custom key material to be used by the data key for encryption and decryption.
+
+
+
+Description
+Key material is used to encrypt and decrypt data. If custom key material is not provided, the key material for the new data key is generated from a cryptographically secure random device.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_set_masterkey.html b/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_set_masterkey.html
new file mode 100644
index 0000000000000000000000000000000000000000..eda2a0f8b83f33636a4bc6b8cd576891eb707523
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_set_masterkey.html
@@ -0,0 +1,236 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_datakey_opts_set_masterkey() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_datakey_opts_set_masterkey()
+
+Synopsis
+void
+mongoc_client_encryption_datakey_opts_set_masterkey (
+ mongoc_client_encryption_datakey_opts_t * opts , const bson_t * masterkey );
+
+
+Identifies the masterkey for the Key Management Service (KMS) provider used to encrypt a new data key.
+
+
+
+Description
+Setting the masterkey is required when creating a data key with the KMS providers: aws , azure , gcp , and kmip .
+Setting the masterkey is prohibited with the KMS provider local .
+The format of masterkey for “aws” is as follows:
+{
+ region : String ,
+ key : String , /* The Amazon Resource Name (ARN) to the AWS customer master key (CMK). */
+ endpoint : Optional < String > /* An alternate host identifier to send KMS requests to. May include port number. Defaults to "kms.<region>.amazonaws.com" */
+}
+
+
+The format of masterkey for “azure” is as follows:
+{
+ keyVaultEndpoint : String , /* Host with optional port. Example: "example.vault.azure.net". */
+ keyName : String ,
+ keyVersion : Optional < String > /* A specific version of the named key, defaults to using the key's primary version. */
+}
+
+
+The format of masterkey for “gcp” is as follows:
+{
+ projectId : String ,
+ location : String ,
+ keyRing : String ,
+ keyName : String ,
+ keyVersion : Optional < String > , /* A specific version of the named key, defaults to using the key's primary version. */
+ endpoint : Optional < String > /* Host with optional port. Defaults to "cloudkms.googleapis.com". */
+}
+
+
+The format of masterkey for “kmip” is as follows:
+{
+ keyId : Optional < String > ,
+ endpoint : Optional < String > /* Host with optional port. */
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_t.html b/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..2cfa42e3bd0ca34e071e7b9304b8b888ff39a5a5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_datakey_opts_t.html
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_datakey_opts_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_datakey_opts_t
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_decrypt.html b/libmongoc/1.23.4/mongoc_client_encryption_decrypt.html
new file mode 100644
index 0000000000000000000000000000000000000000..0ba247e96baa0567f8aa3f9de3020b7fa29fe857
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_decrypt.html
@@ -0,0 +1,215 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_decryption_decrypt() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_decryption_decrypt()
+
+Synopsis
+bool
+mongoc_client_encryption_decrypt ( mongoc_client_encryption_t * client_encryption ,
+ const bson_value_t * ciphertext ,
+ bson_value_t * value ,
+ bson_error_t * error );
+
+
+Performs explicit decryption.
+value is always initialized (even on failure). Caller must call bson_value_destroy() to free.
+
+
+
+Returns
+Returns true if successful. Returns false and sets error otherwise.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_delete_key.html b/libmongoc/1.23.4/mongoc_client_encryption_delete_key.html
new file mode 100644
index 0000000000000000000000000000000000000000..fe3870a0d73ae26781c82b8581a4b2c24538d176
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_delete_key.html
@@ -0,0 +1,213 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_delete_key() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_delete_key()
+
+Synopsis
+bool
+mongoc_client_encryption_delete_key (
+ mongoc_client_encryption_t * client_encryption ,
+ const bson_value_t * keyid ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+Delete a key document in the key vault collection that has the given keyid .
+
+
+
+Returns
+Returns true if successful. Returns false and sets error otherwise.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_destroy.html b/libmongoc/1.23.4/mongoc_client_encryption_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..669390bb76dab2295e6e96796cc0f0083c39c596
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_destroy.html
@@ -0,0 +1,196 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_destroy()
+
+Synopsis
+void
+mongoc_client_encryption_destroy (
+ mongoc_client_encryption_t * client_encryption );
+
+
+Release all resources associated with client_encryption and free the structure. Does nothing if client_encryption is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_encrypt.html b/libmongoc/1.23.4/mongoc_client_encryption_encrypt.html
new file mode 100644
index 0000000000000000000000000000000000000000..5b636ea9a6caad307ccd8fb303692e173f125da6
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_encrypt.html
@@ -0,0 +1,232 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_encrypt() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_encrypt()
+
+
+
+Returns
+Returns true if successful. Returns false and sets error otherwise.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_destroy.html b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..55ccbcb2753f048140358816dc514d6b0b03c8a9
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_destroy.html
@@ -0,0 +1,195 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_encrypt_opts_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_encrypt_opts_destroy()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_new.html b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..d37ac037c24ad6c2f284769124f276952448b475
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_new.html
@@ -0,0 +1,192 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_encrypt_opts_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_encrypt_opts_new()
+
+Synopsis
+mongoc_client_encryption_encrypt_opts_t *
+mongoc_client_encryption_encrypt_opts_new ( void ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_set_algorithm.html b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_set_algorithm.html
new file mode 100644
index 0000000000000000000000000000000000000000..95a878799e99dedb25f2fa81dc15b29c1fc7298f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_set_algorithm.html
@@ -0,0 +1,232 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_encrypt_opts_set_algorithm() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_encrypt_opts_set_algorithm()
+
+Synopsis
+void
+mongoc_client_encryption_encrypt_opts_set_algorithm (
+ mongoc_client_encryption_encrypt_opts_t * opts , const char * algorithm );
+
+#define MONGOC_AEAD_AES_256_CBC_HMAC_SHA_512_RANDOM "AEAD_AES_256_CBC_HMAC_SHA_512-Random"
+#define MONGOC_AEAD_AES_256_CBC_HMAC_SHA_512_DETERMINISTIC "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
+// (Experimental: See below)
+#define MONGOC_ENCRYPT_ALGORITHM_INDEXED "Indexed"
+// (Experimental: See below)
+#define MONGOC_ENCRYPT_ALGORITHM_UNINDEXED "Unindexed"
+
+
+Identifies the algorithm to use for encryption. Valid values of algorithm are:
+"AEAD_AES_256_CBC_HMAC_SHA_512-Random"
+
+for randomized encryption.
+
+"AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
+
+for deterministic (queryable) encryption.
+
+"Indexed"
+
+for indexed encryption.
+
+
Note
+
This option is part of the experimental
+Queryable Encryption API and may be subject
+to breaking changes in future releases.
+
+
+"Unindexed"
+
+for unindexed encryption.
+
+
Note
+
This option is part of the experimental
+Queryable Encryption API and may be subject
+to breaking changes in future releases.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_set_contention_factor.html b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_set_contention_factor.html
new file mode 100644
index 0000000000000000000000000000000000000000..69158f0b3dadb48302e8f4940ba810ccfcbc0c42
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_set_contention_factor.html
@@ -0,0 +1,209 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_encrypt_opts_set_contention_factor() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_encrypt_opts_set_contention_factor()
+
+Synopsis
+void
+mongoc_client_encryption_encrypt_opts_set_contention_factor (
+ mongoc_client_encryption_encrypt_opts_t * opts , int64_t contention_factor );
+
+
+
+
Important
+
This API is part of the experimental
+Queryable Encryption API and may be subject
+to breaking changes in future releases.
+
+
+
New in version 1.22.0.
+
+Sets a contention factor for explicit encryption.
+Only applies when the algorithm set by mongoc_client_encryption_encrypt_opts_set_algorithm() is “Indexed”.
+It is an error to set the contention factor when algorithm is not “Indexed”.
+If contention factor is not supplied, it defaults to a value of 0.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_set_keyaltname.html b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_set_keyaltname.html
new file mode 100644
index 0000000000000000000000000000000000000000..4aa39dfa5bd980c08ac69fb37c51a17dbfb34f0d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_set_keyaltname.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_encrypt_opts_set_keyaltname() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_encrypt_opts_set_keyaltname()
+
+Synopsis
+void
+mongoc_client_encryption_encrypt_opts_set_keyaltname (
+ mongoc_client_encryption_encrypt_opts_t * opts , const char * keyaltname );
+
+
+Identifies the data key to use for encryption. This option is mutually exclusive with mongoc_client_encryption_encrypt_opts_set_keyid() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_set_keyid.html b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_set_keyid.html
new file mode 100644
index 0000000000000000000000000000000000000000..9f919b37cb9c454ef459a66d0a9574882479fa6a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_set_keyid.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_encrypt_opts_set_keyid() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_encrypt_opts_set_keyid()
+
+Synopsis
+void
+mongoc_client_encryption_encrypt_opts_set_keyid (
+ mongoc_client_encryption_encrypt_opts_t * opts , const bson_value_t * keyid );
+
+
+Identifies the data key to use for encryption. This option is mutually exclusive with mongoc_client_encryption_encrypt_opts_set_keyaltname() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_set_query_type.html b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_set_query_type.html
new file mode 100644
index 0000000000000000000000000000000000000000..57d37a85440de0032445ffb20cb43a7f01b89e7c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_set_query_type.html
@@ -0,0 +1,211 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_encrypt_opts_set_query_type() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_encrypt_opts_set_query_type()
+
+Synopsis
+#define MONGOC_ENCRYPT_QUERY_TYPE_EQUALITY "equality"
+
+MONGOC_EXPORT ( void )
+ mongoc_client_encryption_encrypt_opts_set_query_type (
+ mongoc_client_encryption_encrypt_opts_t * opts , const char * query_type );
+
+
+
+
Important
+
This API is part of the experimental
+Queryable Encryption API and may be subject
+to breaking changes in future releases.
+
+
+
New in version 1.22.0.
+
+Sets a query type for explicit encryption. Currently, the only supported value
+for query_type is "equality" .
+Only applies when the algorithm set by mongoc_client_encryption_encrypt_opts_set_algorithm() is “Indexed”.
+It is an error to set the query type when algorithm is not “Indexed”.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_t.html b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..439bb89745c5b3a466f2d2ffeddee1480a5a44c9
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_encrypt_opts_t.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_encrypt_opts_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_encrypt_opts_t
+
+Synopsis
+typedef struct _mongoc_client_encryption_encrypt_opts_t mongoc_client_encryption_encrypt_opts_t ;
+
+
+Used to set options for mongoc_client_encryption_encrypt() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_get_crypt_shared_version.html b/libmongoc/1.23.4/mongoc_client_encryption_get_crypt_shared_version.html
new file mode 100644
index 0000000000000000000000000000000000000000..4abe12fb84c35764a32ea5f34b99863dcea79bf9
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_get_crypt_shared_version.html
@@ -0,0 +1,212 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_get_crypt_shared_version() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_get_crypt_shared_version()
+
+Synopsis
+const char *
+mongoc_client_encryption_get_crypt_shared_version ( mongoc_client_encryption_t const * enc )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Obtain the version string of the crypt_shared that is loaded for the given
+explicit encryption object. If no crypt_shared library is loaded, the returned
+pointer will be NULL .
+
+
+
+Returns
+A pointer to a null-terminated character array string designating the version of
+crypt_shared that was loaded for enc . If no crypt_shared library is
+loaded, the returned pointer will be NULL . The pointed-to array must not be
+modified or freed. The returned pointer is only valid for the lifetime of
+enc .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_get_key.html b/libmongoc/1.23.4/mongoc_client_encryption_get_key.html
new file mode 100644
index 0000000000000000000000000000000000000000..5e126b1f4a583b36063eea1264406cef0ea7fdc5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_get_key.html
@@ -0,0 +1,211 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_get_key() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_get_key()
+
+Synopsis
+bool
+mongoc_client_encryption_get_key ( mongoc_client_encryption_t * client_encryption ,
+ const bson_value_t * keyid ,
+ bson_t * key_doc ,
+ bson_error_t * error );
+
+
+Get a key document in the key vault collection that has the given keyid .
+
+
+Parameters
+
+client_encryption : A mongoc_client_encryption_t .
+keyid : The UUID (BSON binary subtype 0x04) of the key to get.
+key_doc : Optional. An uninitialized bson_t set to the resulting key document, or an empty document value if the key does not exist. Must be freed by bson_destroy() .
+error : Optional. bson_error_t .
+
+
+
+Returns
+Returns true if successful. Returns false and sets error otherwise.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_get_key_by_alt_name.html b/libmongoc/1.23.4/mongoc_client_encryption_get_key_by_alt_name.html
new file mode 100644
index 0000000000000000000000000000000000000000..32863c6790438a604e821da207762e699993a03c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_get_key_by_alt_name.html
@@ -0,0 +1,212 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_get_key_by_alt_name() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_get_key_by_alt_name()
+
+Synopsis
+bool
+mongoc_client_encryption_get_key_by_alt_name (
+ mongoc_client_encryption_t * client_encryption ,
+ const char * keyaltname ,
+ bson_value_t * key_doc ,
+ bson_error_t * error );
+
+
+Get a key document in the key vault collection that has the given keyaltname .
+
+
+
+Returns
+Returns true if successful. Returns false and sets error otherwise.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_get_keys.html b/libmongoc/1.23.4/mongoc_client_encryption_get_keys.html
new file mode 100644
index 0000000000000000000000000000000000000000..4c4c562d5023531263f7b3a61d215aeaa9478d0b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_get_keys.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_get_keys() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_get_keys()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_client_encryption_get_keys ( mongoc_client_encryption_t * client_encryption ,
+ bson_error_t * error );
+
+
+Get all the key documents in the key vault collection.
+
+
+
+Returns
+Returns the result of the internal find command if successful. Returns NULL and sets error otherwise.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_new.html b/libmongoc/1.23.4/mongoc_client_encryption_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..54ab9759fe0bc806db8e6426ed2f552cf9552b59
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_new.html
@@ -0,0 +1,210 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_new()
+
+Synopsis
+mongoc_client_encryption_t *
+mongoc_client_encryption_new ( mongoc_client_encryption_opts_t * opts ,
+ bson_error_t * error ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Create a new mongoc_client_encryption_t .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_opts_destroy.html b/libmongoc/1.23.4/mongoc_client_encryption_opts_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..eee11a1a157a9522f72eb789ee8fab7d20860cd2
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_opts_destroy.html
@@ -0,0 +1,195 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_opts_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_opts_destroy()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_opts_new.html b/libmongoc/1.23.4/mongoc_client_encryption_opts_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..8e7cca5dfd5b7548146546a9b8f5f09f008a4600
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_opts_new.html
@@ -0,0 +1,192 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_opts_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_opts_new()
+
+Synopsis
+mongoc_client_encryption_opts_t *
+mongoc_client_encryption_opts_new ( void ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_opts_set_keyvault_client.html b/libmongoc/1.23.4/mongoc_client_encryption_opts_set_keyvault_client.html
new file mode 100644
index 0000000000000000000000000000000000000000..a4482292c207faa286f4bb94ad9a14ad630c39b9
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_opts_set_keyvault_client.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_opts_set_keyvault_client() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_opts_set_keyvault_client()
+
+Synopsis
+void
+mongoc_client_encryption_opts_set_keyvault_client (
+ mongoc_client_encryption_opts_t * opts ,
+ mongoc_client_t * keyvault_client );
+
+
+Set the mongoc_client_t to use during key creation and key lookup for encryption and decryption. This may be either a single-threaded or multi-threaded client (i.e. a client obtained from a mongoc_client_pool_t ).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_opts_set_keyvault_namespace.html b/libmongoc/1.23.4/mongoc_client_encryption_opts_set_keyvault_namespace.html
new file mode 100644
index 0000000000000000000000000000000000000000..d1fcaeca9cbf420fcb20c9b539bdfeb229593e6c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_opts_set_keyvault_namespace.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_opts_set_keyvault_namespace() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_opts_set_keyvault_namespace()
+
+Synopsis
+void
+mongoc_client_encryption_opts_set_keyvault_namespace (
+ mongoc_client_encryption_opts_t * opts , const char * db , const char * coll );
+
+
+Set the database and collection name of the key vault. The key vault is the specially designated collection containing encrypted data keys for Client-Side Field Level Encryption .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_opts_set_kms_credential_provider_callback.html b/libmongoc/1.23.4/mongoc_client_encryption_opts_set_kms_credential_provider_callback.html
new file mode 100644
index 0000000000000000000000000000000000000000..92c3d0b2cedb63309df44e957d86af10498eb0af
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_opts_set_kms_credential_provider_callback.html
@@ -0,0 +1,243 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_opts_set_kms_credential_provider_callback () — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_opts_set_kms_credential_provider_callback ()
+
+
New in version 1.23.0.
+
+
+Synopsis
+void
+mongoc_client_encryption_opts_set_kms_credential_provider_callback (
+ mongoc_client_encryption_opts_t * opts ,
+ mongoc_kms_credentials_provider_callback_fn fn ,
+ void * userdata );
+
+
+Set the user-provided callback to provide KMS credentials on-demand when they
+are needed.
+
+
+Parameters
+
+opts - The options object to update.
+fn - The provider callback to set on the options object. May be NULL
+to clear the callback. Refer to:
+mongoc_kms_credentials_provider_callback_fn
+userdata - An arbitrary pointer that will be passed along to the
+callback function when it is called by libmongoc.
+
+
+Related:
+
+
+type mongoc_kms_credentials_provider_callback_fn
+typedef
+bool ( * mongoc_kms_credentials_provider_callback_fn ) ( void * userdata ,
+ const bson_t * params ,
+ bson_t * out ,
+ bson_error_t * error );
+
+
+The type of a callback function for providing KMS providers data on-demand.
+
+Parameters:
+
+userdata - The same userdata pointer provided to the userdata
+parameter when the callback was set.
+params - Parameters for the requested KMS credentials. Currently
+empty.
+out - The output bson_t in which to write the new
+KMS providers. When passed to the callback, this already points to an
+empty BSON document which must be populated.
+error - An output parameter for indicating any errors that might
+occur while generating the KMS credentials.
+
+
+Return value:
+Must return true on success, false on failure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_opts_set_kms_providers.html b/libmongoc/1.23.4/mongoc_client_encryption_opts_set_kms_providers.html
new file mode 100644
index 0000000000000000000000000000000000000000..9f02e4a28b132148b12c44a62bdf2f1ecfcfdfa5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_opts_set_kms_providers.html
@@ -0,0 +1,242 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_opts_set_kms_providers() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_opts_set_kms_providers()
+
+Synopsis
+void
+mongoc_client_encryption_opts_set_kms_providers (
+ mongoc_client_encryption_opts_t * opts , const bson_t * kms_providers );
+
+
+
+
+Parameters
+
+kms_providers is a BSON document containing configuration for each KMS provider. Currently aws , local , azure , gcp , and kmip are supported. At least one must be specified.
+The format for “aws” is as follows:
+aws : {
+ accessKeyId : String ,
+ secretAccessKey : String
+}
+
+
+The format for “local” is as follows:
+local : {
+ key : < 96 byte BSON binary of subtype 0 > or String /* The master key used to encrypt/decrypt data keys. May be passed as a base64 encoded string. */
+}
+
+
+The format for “azure” is as follows:
+azure : {
+ tenantId : String ,
+ clientId : String ,
+ clientSecret : String ,
+ identityPlatformEndpoint : Optional < String > /* Defaults to login.microsoftonline.com */
+}
+
+
+The format for “gcp” is as follows:
+gcp : {
+ email : String ,
+ privateKey : byte [] or String , /* May be passed as a base64 encoded string. */
+ endpoint : Optional < String > /* Defaults to oauth2.googleapis.com */
+}
+
+
+The format for “kmip” is as follows:
+kmip : {
+ endpoint : String
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_opts_set_tls_opts.html b/libmongoc/1.23.4/mongoc_client_encryption_opts_set_tls_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..ec0130051e8fb88d4ad0a495bf10851cdfebbaa0
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_opts_set_tls_opts.html
@@ -0,0 +1,231 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_opts_set_tls_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_opts_set_tls_opts()
+
+Synopsis
+void
+mongoc_client_encryption_opts_set_tls_opts (
+ mongoc_client_encryption_opts_t * opts , const bson_t * tls_opts );
+
+
+
+
+Parameters
+
+tls_opts is a BSON document of the following form:
+< KMS provider name >: {
+ tlsCaFile : Optional < String >
+ tlsCertificateKeyFile : Optional < String >
+ tlsCertificateKeyFilePassword : Optional < String >
+}
+
+
+The KMS providers aws , azure , gcp , and kmip are supported as keys in the tls_opts document.
+tls_opts maps the KMS provider name to a BSON document for TLS options.
+The BSON document for TLS options may contain the following keys:
+
+
+
Example use
+
mongoc_client_encryption_opts_t * ce_opts =
+ mongoc_client_encryption_opts_new ();
+bson_t * tls_opts = bson_new ();
+
+BCON_APPEND ( tls_opts , "kmip" , "{" , MONGOC_URI_TLSCAFILE , "ca1.pem" , "}" );
+BCON_APPEND ( tls_opts , "aws" , "{" , MONGOC_URI_TLSCAFILE , "ca2.pem" , "}" );
+mongoc_client_encryption_opts_set_tls_opts ( ce_opts , tls_opts );
+
+
+
+See Configuring TLS for a description of the behavior of these options.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_opts_t.html b/libmongoc/1.23.4/mongoc_client_encryption_opts_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..9afdc8361ee664642f00ae138bcb19ebe0607983
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_opts_t.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_opts_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_opts_t
+
+Synopsis
+typedef struct _mongoc_client_encryption_opts_t mongoc_client_encryption_opts_t ;
+
+
+Used to set options for mongoc_client_encryption_new() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_remove_key_alt_name.html b/libmongoc/1.23.4/mongoc_client_encryption_remove_key_alt_name.html
new file mode 100644
index 0000000000000000000000000000000000000000..06af83eb034254e3b0178dab1b94613bbca5b76b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_remove_key_alt_name.html
@@ -0,0 +1,215 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_remove_key_alt_name() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_remove_key_alt_name()
+
+Synopsis
+bool
+mongoc_client_encryption_remove_key_alt_name (
+ mongoc_client_encryption_t * client_encryption ,
+ const bson_value_t * keyid ,
+ const char * keyaltname ,
+ bson_t * key_doc ,
+ bson_error_t * error );
+
+
+Remove keyaltname from the set of keyAltNames in the key document with UUID keyid .
+Also removes the keyAltNames field from the key document if it would otherwise be empty.
+
+
+Parameters
+
+client_encryption : A mongoc_client_encryption_t .
+keyid : The UUID (BSON binary subtype 0x04) of the key to remove the key alternate name from.
+keyaltname : The key alternate name to remove.
+key_doc : Optional. An uninitialized bson_t set to the value of the key document before removal of the key alternate name, or an empty document the key does not exist. Must be freed by bson_value_destroy() .
+error : Optional. bson_error_t .
+
+
+
+Returns
+Returns true if successful. Returns false and sets error otherwise.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_rewrap_many_datakey.html b/libmongoc/1.23.4/mongoc_client_encryption_rewrap_many_datakey.html
new file mode 100644
index 0000000000000000000000000000000000000000..be2424448b56f25c4aef68bdd659bf5f24dc6c0a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_rewrap_many_datakey.html
@@ -0,0 +1,224 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_rewrap_many_datakey() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_rewrap_many_datakey()
+
+Synopsis
+bool
+mongoc_client_encryption_rewrap_many_datakey (
+ mongoc_client_encryption_t * client_encryption ,
+ const bson_t * filter ,
+ const char * provider ,
+ const bson_t * master_key ,
+ mongoc_client_encryption_rewrap_many_datakey_result_t * result ,
+ bson_error_t * error );
+
+
+Rewraps zero or more data keys in the key vault collection that match the
+provided filter .
+A NULL argument for filter is equivalent to being given an empty
+document (match all).
+If provider is NULL , rewraps matching data keys with their current KMS
+provider.
+If provider is not NULL , rewraps matching data keys with the new KMS
+provider as described by master_key . The master_key document must
+conform to the Client Side Encryption specification .
+
+
+Parameters
+
+client_encryption : A mongoc_client_encryption_t .
+filter : The filter to use when finding data keys to rewrap in the key vault collection.
+provider : The new KMS provider to use to encrypt the data keys, or NULL to use the current KMS provider(s).
+master_key : The master key fields corresponding to the new KMS provider when provider is not NULL .
+result : An optional mongoc_client_encryption_rewrap_many_datakey_result_t .
+error : A bson_error_t set on failure.
+
+
+
+Returns
+Returns true if successful. Returns false and sets error otherwise.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_rewrap_many_datakey_result_destroy.html b/libmongoc/1.23.4/mongoc_client_encryption_rewrap_many_datakey_result_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..082be9c69957b7a6cd8b54dad205b9f7e1eb7b16
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_rewrap_many_datakey_result_destroy.html
@@ -0,0 +1,196 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_rewrap_many_datakey_result_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_rewrap_many_datakey_result_destroy()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result.html b/libmongoc/1.23.4/mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result.html
new file mode 100644
index 0000000000000000000000000000000000000000..e268e2bc9c7bacadb99af420d4fb1015b03fd509
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result.html
@@ -0,0 +1,208 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result()
+
+Synopsis
+const bson_t *
+mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result (
+ mongoc_client_encryption_rewrap_many_datakey_result_t * result )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Get the bulk write result set by a successful call to mongoc_client_encryption_rewrap_many_datakey() .
+Returns NULL if no bulk write operation was executed or if the bulk write operation was unacknowledged.
+
+
+
+Returns
+A bson_t that must not be modified or freed if result is not NULL . Otherwise, returns NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_rewrap_many_datakey_result_new.html b/libmongoc/1.23.4/mongoc_client_encryption_rewrap_many_datakey_result_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..4b9f8825c946669cb9e5934a6c514a4b93db2d7f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_rewrap_many_datakey_result_new.html
@@ -0,0 +1,193 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_rewrap_many_datakey_result_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_rewrap_many_datakey_result_new()
+
+Synopsis
+mongoc_client_encryption_rewrap_many_datakey_result_t *
+mongoc_client_encryption_rewrap_many_datakey_result_new ( void )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_rewrap_many_datakey_result_t.html b/libmongoc/1.23.4/mongoc_client_encryption_rewrap_many_datakey_result_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..a1acfe21e3b953bc40b8c2502f28e4ff96d7f00e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_rewrap_many_datakey_result_t.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_rewrap_many_datakey_result_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_rewrap_many_datakey_result_t
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_encryption_t.html b/libmongoc/1.23.4/mongoc_client_encryption_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..1052af59730cced237e0c2ca502a23691d7708aa
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_encryption_t.html
@@ -0,0 +1,230 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_encryption_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_encryption_t
+
+Synopsis
+typedef struct _mongoc_client_encryption_t mongoc_client_encryption_t ;
+
+
+mongoc_client_encryption_t provides utility functions for Client-Side Field Level Encryption. See the guide for Using Client-Side Field Level Encryption .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_find_databases_with_opts.html b/libmongoc/1.23.4/mongoc_client_find_databases_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..0c8ac8cd299d3d6e07793cd695accc257aead9f7
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_find_databases_with_opts.html
@@ -0,0 +1,215 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_find_databases_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_find_databases_with_opts()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_client_find_databases_with_opts (
+ mongoc_client_t * client , const bson_t * opts ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Fetches a cursor containing documents, each corresponding to a database on this MongoDB server.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_collection.html b/libmongoc/1.23.4/mongoc_client_get_collection.html
new file mode 100644
index 0000000000000000000000000000000000000000..e09c261b4c7b6b9f890ec9ded77da8fc9511e0dd
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_collection.html
@@ -0,0 +1,208 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_collection() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_collection()
+
+Synopsis
+mongoc_collection_t *
+mongoc_client_get_collection ( mongoc_client_t * client ,
+ const char * db ,
+ const char * collection )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Get a newly allocated mongoc_collection_t for the collection named collection in the database named db .
+
+
Tip
+
Collections are automatically created on the MongoDB server upon insertion of the first document. There is no need to create a collection manually.
+
+
+
+Parameters
+
+client : A mongoc_client_t .
+db : The name of the database containing the collection.
+collection : The name of the collection.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_crypt_shared_version.html b/libmongoc/1.23.4/mongoc_client_get_crypt_shared_version.html
new file mode 100644
index 0000000000000000000000000000000000000000..b075df3a4340c21414190da1c0377c32760b8844
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_crypt_shared_version.html
@@ -0,0 +1,213 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_crypt_shared_version() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_crypt_shared_version()
+
+Synopsis
+const char *
+mongoc_client_get_crypt_shared_version ( const mongoc_client_t * client )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Obtain the version string of the crypt_shared that is loaded for
+auto-encryption on the given client . If no crypt_shared library is loaded,
+the returned pointer will be NULL .
+
+
+
+Returns
+A pointer to a null-terminated character array string designating the version of
+crypt_shared that was loaded for auto-encryption with client . If no
+crypt_shared library is loaded, or auto-encryption is not loaded for the given
+client , the returned pointer will be NULL . The pointed-to array must not
+be modified or freed. The returned pointer is only valid for the lifetime of
+client .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_database.html b/libmongoc/1.23.4/mongoc_client_get_database.html
new file mode 100644
index 0000000000000000000000000000000000000000..38acf789df2c6a3612eb8177f9ab85ea1e6f1a62
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_database.html
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_database() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_database()
+
+Synopsis
+mongoc_database_t *
+mongoc_client_get_database ( mongoc_client_t * client ,
+ const char * name ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Get a newly allocated mongoc_database_t for the database named name .
+
+
Tip
+
Databases are automatically created on the MongoDB server upon insertion of the first document into a collection. There is no need to create a database manually.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_database_names.html b/libmongoc/1.23.4/mongoc_client_get_database_names.html
new file mode 100644
index 0000000000000000000000000000000000000000..1f0ad1ce4a08d5e071df4968e09a17f5ab90678d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_database_names.html
@@ -0,0 +1,218 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_database_names() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_database_names()
+
+Synopsis
+char **
+mongoc_client_get_database_names ( mongoc_client_t * client , bson_error_t * error )
+ BSON_GNUC_WARN_UNUSED_RESULT
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_client_get_database_names_with_opts );
+
+
+
+
+
+Description
+This function queries the MongoDB server for a list of known databases.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+A NULL terminated vector of NULL-byte terminated strings. The result should be freed with bson_strfreev() .
+NULL is returned upon failure and error is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_database_names_with_opts.html b/libmongoc/1.23.4/mongoc_client_get_database_names_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..a3bf44886fd1839073d5ad15f37791004b0cbcf2
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_database_names_with_opts.html
@@ -0,0 +1,236 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_database_names_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_database_names_with_opts()
+
+Synopsis
+char **
+mongoc_client_get_database_names_with_opts ( mongoc_client_t * client ,
+ const bson_t * opts ,
+ bson_error_t * error )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+This function queries the MongoDB server for a list of known databases.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+A NULL terminated vector of NULL-byte terminated strings. The result should be freed with bson_strfreev() .
+NULL is returned upon failure and error is set.
+
+
+Examples
+{
+ bson_error_t error ;
+ char ** strv ;
+ unsigned i ;
+
+ if (( strv = mongoc_client_get_database_names_with_opts ( client , NULL , & error ))) {
+ for ( i = 0 ; strv [ i ]; i ++ )
+ printf ( "%s \n " , strv [ i ]);
+ bson_strfreev ( strv );
+ } else {
+ fprintf ( stderr , "Command failed: %s \n " , error . message );
+ }
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_default_database.html b/libmongoc/1.23.4/mongoc_client_get_default_database.html
new file mode 100644
index 0000000000000000000000000000000000000000..3dd35d09dcc0778d6a09cd758bdc1bc46ed8e5e3
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_default_database.html
@@ -0,0 +1,225 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_default_database() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_default_database()
+
+Synopsis
+mongoc_database_t *
+mongoc_client_get_default_database ( mongoc_client_t * client )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Get the database named in the MongoDB connection URI, or NULL if the URI specifies none.
+Useful when you want to choose which database to use based only on the URI in a configuration file.
+
+
+
+
+Example
+
+
Default Database Example
+
/* default database is "db_name" */
+mongoc_client_t * client = mongoc_client_new ( "mongodb://host/db_name" );
+mongoc_database_t * db = mongoc_client_get_default_database ( client );
+
+assert ( ! strcmp ( "db_name" , mongoc_database_get_name ( db )));
+
+mongoc_database_destroy ( db );
+mongoc_client_destroy ( client );
+
+/* no default database */
+client = mongoc_client_new ( "mongodb://host/" );
+db = mongoc_client_get_default_database ( client );
+
+assert ( ! db );
+
+mongoc_client_destroy ( client );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_gridfs.html b/libmongoc/1.23.4/mongoc_client_get_gridfs.html
new file mode 100644
index 0000000000000000000000000000000000000000..d80a544b0ec10c1fe1690359123b46fe28e8f0bc
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_gridfs.html
@@ -0,0 +1,209 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_gridfs() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_gridfs()
+
+Synopsis
+mongoc_gridfs_t *
+mongoc_client_get_gridfs ( mongoc_client_t * client ,
+ const char * db ,
+ const char * prefix ,
+ bson_error_t * error ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+The mongoc_client_get_gridfs() function shall create a new mongoc_gridfs_t . The db parameter is the name of the database which the gridfs instance should exist in. The prefix parameter corresponds to the gridfs collection namespacing; its default is “fs”, thus the default GridFS collection names are “fs.files” and “fs.chunks”.
+
+
+Parameters
+
+client : A mongoc_client_t .
+db : The database name.
+prefix : Optional prefix for gridfs collection names or NULL .
+error : An optional location for a bson_error_t or NULL .
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_handshake_description.html b/libmongoc/1.23.4/mongoc_client_get_handshake_description.html
new file mode 100644
index 0000000000000000000000000000000000000000..91f694552fff821cf4010e6ac040f4c8e9169b45
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_handshake_description.html
@@ -0,0 +1,224 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_handshake_description() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_handshake_description()
+
+Synopsis
+mongoc_server_description_t *
+mongoc_client_get_handshake_description ( mongoc_client_t * client ,
+ uint32_t server_id ,
+ bson_t * opts ,
+ bson_error_t * error )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Returns a description constructed from the initial handshake response to a server.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_max_bson_size.html b/libmongoc/1.23.4/mongoc_client_get_max_bson_size.html
new file mode 100644
index 0000000000000000000000000000000000000000..d42747efcacf5cb3973850763c4d17e4a6bbcbb8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_max_bson_size.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_max_bson_size() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_max_bson_size()
+
+Synopsis
+int32_t
+mongoc_client_get_max_bson_size ( mongoc_client_t * client );
+
+
+The mongoc_client_get_max_bson_size() returns the maximum bson document size allowed by the cluster. Until a connection has been made, this will be the default of 16Mb.
+
+
+Deprecated
+
+
Warning
+
This function is deprecated and should not be used in new code.
+
+
+
+
+Returns
+The server provided max bson size, or 16Mb if no connection has been established.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_max_message_size.html b/libmongoc/1.23.4/mongoc_client_get_max_message_size.html
new file mode 100644
index 0000000000000000000000000000000000000000..e2d8347ee82454b58c92f7b0f985d2c061585be2
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_max_message_size.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_max_message_size() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_max_message_size()
+
+Synopsis
+int32_t
+mongoc_client_get_max_message_size ( mongoc_client_t * client );
+
+
+The mongoc_client_get_max_message_size() returns the maximum message size allowed by the cluster. Until a connection has been made, this will be the default of 40Mb.
+
+
+Deprecated
+
+
Warning
+
This function is deprecated and should not be used in new code.
+
+
+
+
+Returns
+The server provided max message size, or 40Mb if no connection has been established.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_read_concern.html b/libmongoc/1.23.4/mongoc_client_get_read_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..d8aafa7f91a8a06715e7f2e3d325e3dbaf6691a8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_read_concern.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_read_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_read_concern()
+
+Synopsis
+const mongoc_read_concern_t *
+mongoc_client_get_read_concern ( const mongoc_client_t * client );
+
+
+Retrieve the default read concern configured for the client instance. The result should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_read_prefs.html b/libmongoc/1.23.4/mongoc_client_get_read_prefs.html
new file mode 100644
index 0000000000000000000000000000000000000000..cf49eb7ecf133f7b7c9b831d9b296269ca94b92c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_read_prefs.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_read_prefs() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_read_prefs()
+
+Synopsis
+const mongoc_read_prefs_t *
+mongoc_client_get_read_prefs ( const mongoc_client_t * client );
+
+
+Retrieves the default read preferences configured for the client instance. The result should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_server_description.html b/libmongoc/1.23.4/mongoc_client_get_server_description.html
new file mode 100644
index 0000000000000000000000000000000000000000..b870a8952ed58717064990eb252819d4f28694a6
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_server_description.html
@@ -0,0 +1,201 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_server_description() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_server_description()
+
+Synopsis
+mongoc_server_description_t *
+mongoc_client_get_server_description (
+ mongoc_client_t * client , uint32_t server_id ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Get information about the server specified by server_id .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_server_descriptions.html b/libmongoc/1.23.4/mongoc_client_get_server_descriptions.html
new file mode 100644
index 0000000000000000000000000000000000000000..700fe6972e6ccaf5dd8fd207421c18f83583f43e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_server_descriptions.html
@@ -0,0 +1,228 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_server_descriptions() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_server_descriptions()
+
+Synopsis
+mongoc_server_description_t **
+mongoc_client_get_server_descriptions ( const mongoc_client_t * client ,
+ size_t * n ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Fetches an array of mongoc_server_description_t structs for all known servers in the topology. Returns no servers until the client connects. Returns a single server if the client is directly connected, or all members of a replica set if the client’s MongoDB URI includes a “replicaSet” option, or all known mongos servers if the MongoDB URI includes a list of them.
+void
+show_servers ( const mongoc_client_t * client )
+{
+ bson_t * b = BCON_NEW ( "ping" , BCON_INT32 ( 1 ));
+ bson_error_t error ;
+ bool r ;
+ mongoc_server_description_t ** sds ;
+ size_t i , n ;
+
+ /* ensure client has connected */
+ r = mongoc_client_command_simple ( client , "db" , b , NULL , NULL , & error );
+ if ( ! r ) {
+ MONGOC_ERROR ( "could not connect: %s \n " , error . message );
+ return ;
+ }
+
+ sds = mongoc_client_get_server_descriptions ( client , & n );
+
+ for ( i = 0 ; i < n ; ++ i ) {
+ printf ( "%s \n " , mongoc_server_description_host ( sds [ i ]) -> host_and_port );
+ }
+
+ mongoc_server_descriptions_destroy_all ( sds , n );
+ bson_destroy ( & b );
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_server_status.html b/libmongoc/1.23.4/mongoc_client_get_server_status.html
new file mode 100644
index 0000000000000000000000000000000000000000..80de33f203865005ca360e31fe4299d7e053b230
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_server_status.html
@@ -0,0 +1,214 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_server_status() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_server_status()
+
+Synopsis
+bool
+mongoc_client_get_server_status ( mongoc_client_t * client ,
+ mongoc_read_prefs_t * read_prefs ,
+ bson_t * reply ,
+ bson_error_t * error ) BSON_GNUC_DEPRECATED ;
+
+
+Queries the server for the current server status. The result is stored in reply .
+reply is always initialized, even in the case of failure. Always call bson_destroy() to release it.
+
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_uri.html b/libmongoc/1.23.4/mongoc_client_get_uri.html
new file mode 100644
index 0000000000000000000000000000000000000000..f3c897f4c4102a528f3ccad75b3c5a810989b885
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_uri.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_uri() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_uri()
+
+Synopsis
+const mongoc_uri_t *
+mongoc_client_get_uri ( const mongoc_client_t * client );
+
+
+Fetches the mongoc_uri_t used to create the client.
+
+
+
+Returns
+A mongoc_uri_t that should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_get_write_concern.html b/libmongoc/1.23.4/mongoc_client_get_write_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..7dae1d81391d157def246e9e85480cc93661cd15
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_get_write_concern.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_get_write_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_get_write_concern()
+
+Synopsis
+const mongoc_write_concern_t *
+mongoc_client_get_write_concern ( const mongoc_client_t * client );
+
+
+Retrieve the default write concern configured for the client instance. The result should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_new.html b/libmongoc/1.23.4/mongoc_client_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..e5dd0038d72e7faae22f97f417a9a4b154ebd30b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_new.html
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_new()
+
+Synopsis
+mongoc_client_t *
+mongoc_client_new ( const char * uri_string ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Creates a new mongoc_client_t using the URI string provided.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_new_from_uri.html b/libmongoc/1.23.4/mongoc_client_new_from_uri.html
new file mode 100644
index 0000000000000000000000000000000000000000..0c5690cfcaa96a2fe501a2b5e139337767e1cc0a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_new_from_uri.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_new_from_uri() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_new_from_uri()
+
+Synopsis
+mongoc_client_t *
+mongoc_client_new_from_uri ( const mongoc_uri_t * uri )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Creates a new mongoc_client_t using the mongoc_uri_t provided.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_new_from_uri_with_error.html b/libmongoc/1.23.4/mongoc_client_new_from_uri_with_error.html
new file mode 100644
index 0000000000000000000000000000000000000000..4149ec7e00a1a4f2daa38f72ee2c5c7b3f0c0ace
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_new_from_uri_with_error.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_new_from_uri_with_error() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_new_from_uri_with_error()
+
+Synopsis
+mongoc_client_t *
+mongoc_client_new_from_uri_with_error ( const mongoc_uri_t * uri ,
+ bson_error_t * error )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Creates a new mongoc_client_t using the mongoc_uri_t provided.
+
+
+
+Returns
+A newly allocated mongoc_client_t that should be freed with mongoc_client_destroy() when no longer in use. On error, NULL is returned and error will be populated with the error description.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_pool_destroy.html b/libmongoc/1.23.4/mongoc_client_pool_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..b397dd44bec92021842f67623ebb4ff41e2aea3d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_pool_destroy.html
@@ -0,0 +1,197 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_pool_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_pool_destroy()
+
+Synopsis
+void
+mongoc_client_pool_destroy ( mongoc_client_pool_t * pool );
+
+
+Release all resources associated with pool , including freeing the structure.
+All mongoc_client_t objects obtained from mongoc_client_pool_pop() from pool must be pushed back onto the pool with mongoc_client_pool_push() prior to calling mongoc_client_pool_destroy() .
+This method is NOT thread safe, and must only be called by one thread. It should be called once the application is shutting down, and after all other threads that use clients have been joined.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_pool_enable_auto_encryption.html b/libmongoc/1.23.4/mongoc_client_pool_enable_auto_encryption.html
new file mode 100644
index 0000000000000000000000000000000000000000..76b564ed51ab302e0b6412c9c0de41ce48be7fb4
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_pool_enable_auto_encryption.html
@@ -0,0 +1,221 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_pool_enable_auto_encryption() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_pool_enable_auto_encryption()
+
+Synopsis
+bool
+mongoc_client_pool_enable_auto_encryption ( mongoc_client_pool_t * pool ,
+ mongoc_auto_encryption_opts_t * opts ,
+ bson_error_t * error );
+
+
+Enable automatic client side encryption on a mongoc_client_pool_t . Requires libmongoc to be built with support for Client-Side Field Level Encryption. See the guide for Using Client-Side Field Level Encryption .
+Automatic encryption is an enterprise-only feature that only applies to operations on a collection. Automatic encryption is not supported for operations on a database or view, and operations that are not bypassed will result in error. To bypass automatic encryption for all operations, bypass automatic encryption with mongoc_auto_encryption_opts_set_bypass_auto_encryption() in opts .
+Automatic encryption requires the authenticated user to have the listCollections privilege action .
+Enabling automatic encryption reduces the maximum message size and may have a negative performance impact.
+
+
+
+Returns
+Returns true if successful. Returns false and sets error otherwise.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_pool_max_size.html b/libmongoc/1.23.4/mongoc_client_pool_max_size.html
new file mode 100644
index 0000000000000000000000000000000000000000..9561cc8022677909ba84f3d0d6b8c3fdae8cfdc8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_pool_max_size.html
@@ -0,0 +1,201 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_pool_max_size() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_pool_max_size()
+
+Synopsis
+void
+mongoc_client_pool_max_size ( mongoc_client_pool_t * pool ,
+ uint32_t max_pool_size );
+
+
+This function sets the maximum number of pooled connections available from a mongoc_client_pool_t .
+
+
+
+Thread Safety
+This function is safe to call from multiple threads.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_pool_min_size.html b/libmongoc/1.23.4/mongoc_client_pool_min_size.html
new file mode 100644
index 0000000000000000000000000000000000000000..83a7f23029e226cebc273d71283ef7378958ce5a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_pool_min_size.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_pool_min_size() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_pool_min_size()
+
+Synopsis
+void
+mongoc_client_pool_min_size ( mongoc_client_pool_t * pool ,
+ uint32_t min_pool_size )
+ BSON_GNUC_DEPRECATED ;
+
+
+This function sets the maximum number of idle clients to be kept in the pool. Any idle clients in excess of the maximum are destroyed. This function is deprecated because its behavior does not match what developers expect from a “minimum pool size”, and its actual behavior is likely to hurt performance.
+Applications should not call this function, they should instead accept the default behavior, which is to keep all idle clients that are pushed into the pool.
+
+
+
+Thread Safety
+This function is safe to call from multiple threads.
+Subsequent calls to mongoc_client_pool_push() respect the new minimum size, and close the least recently used mongoc_client_t if the minimum size is exceeded.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_pool_new.html b/libmongoc/1.23.4/mongoc_client_pool_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..a06d582a26c191f85047b9c03a2f9fa1a2ce90bf
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_pool_new.html
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_pool_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_pool_new()
+
+Synopsis
+mongoc_client_pool_t *
+mongoc_client_pool_new ( const mongoc_uri_t * uri ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+This function creates a new mongoc_client_pool_t using the mongoc_uri_t provided.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_pool_new_with_error.html b/libmongoc/1.23.4/mongoc_client_pool_new_with_error.html
new file mode 100644
index 0000000000000000000000000000000000000000..373b96673ed926e1f167343d911521d2c290bcb4
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_pool_new_with_error.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_pool_new_with_error() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_pool_new_with_error()
+
+Synopsis
+mongoc_client_pool_t *
+mongoc_client_pool_new_with_error ( const mongoc_uri_t * uri ,
+ bson_error_t * error )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+This function creates a new mongoc_client_pool_t using the mongoc_uri_t provided.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_pool_pop.html b/libmongoc/1.23.4/mongoc_client_pool_pop.html
new file mode 100644
index 0000000000000000000000000000000000000000..702c6d50abcc925e35c11a4fa85847b76ccc1830
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_pool_pop.html
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_pool_pop() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_pool_pop()
+
+Synopsis
+mongoc_client_t *
+mongoc_client_pool_pop ( mongoc_client_pool_t * pool )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Retrieve a mongoc_client_t from the client pool, or create one. The total number of clients that can be created from this pool is limited by the URI option “maxPoolSize”, default 100. If this number of clients has been created and all are in use, mongoc_client_pool_pop blocks until another thread returns a client with mongoc_client_pool_push() . If the “waitQueueTimeoutMS” URI option was specified with a positive value, then mongoc_client_pool_pop will return NULL when the timeout expires.
+The returned mongoc_client_t must be returned to the pool with mongoc_client_pool_push() .
+
+
+
+
+Thread Safety
+This function is safe to call from multiple threads.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_pool_push.html b/libmongoc/1.23.4/mongoc_client_pool_push.html
new file mode 100644
index 0000000000000000000000000000000000000000..0fc42c2ed3a53b46b3417c00e2b3d490a6897a6e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_pool_push.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_pool_push() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_pool_push()
+
+Synopsis
+void
+mongoc_client_pool_push ( mongoc_client_pool_t * pool , mongoc_client_t * client );
+
+
+This function returns a mongoc_client_t back to the client pool.
+
+
+
+Thread Safety
+This function is safe to call from multiple threads.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_pool_set_apm_callbacks.html b/libmongoc/1.23.4/mongoc_client_pool_set_apm_callbacks.html
new file mode 100644
index 0000000000000000000000000000000000000000..c3b56a71cb3fdd0d99bb9e65780b3e9171c7f89f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_pool_set_apm_callbacks.html
@@ -0,0 +1,214 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_pool_set_apm_callbacks() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_pool_set_apm_callbacks()
+
+Synopsis
+bool
+mongoc_client_pool_set_apm_callbacks ( mongoc_client_pool_t * pool ,
+ mongoc_apm_callbacks_t * callbacks ,
+ void * context );
+
+
+Register a set of callbacks to receive Application Performance Monitoring events.
+The callbacks are copied by the pool and may be destroyed at any time after. If a context is passed, it is the application’s responsibility to ensure context remains valid for the lifetime of the pool.
+
+
+
+Returns
+Returns true on success. If any arguments are invalid, returns false and logs an error.
+
+
+Thread Safety
+This function can only be called once on a pool, and must be called before the first call to mongoc_client_pool_pop() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_pool_set_appname.html b/libmongoc/1.23.4/mongoc_client_pool_set_appname.html
new file mode 100644
index 0000000000000000000000000000000000000000..b9dad817e12776a83c3cb2f393ebe66e08bc80ba
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_pool_set_appname.html
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_pool_set_appname() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_pool_set_appname()
+
+Synopsis
+bool
+mongoc_client_pool_set_appname ( mongoc_client_pool_t * pool , const char * appname )
+
+
+This function is identical to mongoc_client_set_appname() except for client pools.
+Also note that mongoc_client_set_appname() cannot be called on a client retrieved from a client pool.
+
+
+Parameters
+
+pool : A mongoc_client_pool_t .
+appname : The application name, of length at most MONGOC_HANDSHAKE_APPNAME_MAX .
+
+
+
+Returns
+Returns true if appname was set. If appname is too long, returns false and logs an error.
+
+
+Thread Safety
+This function can only be called once on a pool, and must be called before the first call to mongoc_client_pool_pop() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_pool_set_error_api.html b/libmongoc/1.23.4/mongoc_client_pool_set_error_api.html
new file mode 100644
index 0000000000000000000000000000000000000000..9bc2170b7ac342870d8a9bdfffd8784324123d05
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_pool_set_error_api.html
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_pool_set_error_api() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_pool_set_error_api()
+
+Synopsis
+bool
+mongoc_client_pool_set_error_api ( mongoc_client_pool_t * client ,
+ int32_t version );
+
+
+Configure how the C Driver reports errors. See Setting the Error API Version .
+
+
+Parameters
+
+pool : A mongoc_client_pool_t .
+version : The version of the error API, either MONGOC_ERROR_API_VERSION_LEGACY or MONGOC_ERROR_API_VERSION_2 .
+
+
+
+Returns
+Returns true if the error API version was set, or logs an error message and returns false if version is invalid.
+
+
+Thread Safety
+This function can only be called once on a pool, and must be called before the first call to mongoc_client_pool_pop() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_pool_set_server_api.html b/libmongoc/1.23.4/mongoc_client_pool_set_server_api.html
new file mode 100644
index 0000000000000000000000000000000000000000..bd2d61fc3fe5f3e54b71882e6c32d9b61410db65
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_pool_set_server_api.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_pool_set_server_api() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_pool_set_server_api()
+
+Synopsis
+bool
+mongoc_client_pool_set_server_api ( mongoc_client_pool_t * pool ,
+ const mongoc_server_api_t * api ,
+ bson_error_t * error );
+
+
+Set the API version to use for clients created through pool . Once the API version is set on a pool, it may not be changed to a new value. Attempting to do so will cause this method to fail and set error .
+
+
+
+Returns
+True if the version was successfully set, false if not. On failure, error will be set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_pool_set_ssl_opts.html b/libmongoc/1.23.4/mongoc_client_pool_set_ssl_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..18ab3d832082cf2d497c4c68831f65ccec1d91fc
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_pool_set_ssl_opts.html
@@ -0,0 +1,217 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_pool_set_ssl_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_pool_set_ssl_opts()
+
+Synopsis
+#ifdef MONGOC_ENABLE_SSL
+void
+mongoc_client_pool_set_ssl_opts ( mongoc_client_pool_t * pool ,
+ const mongoc_ssl_opt_t * opts );
+#endif
+
+
+This function is identical to mongoc_client_set_ssl_opts() except for
+client pools. It ensures that all clients retrieved from
+mongoc_client_pool_pop() or mongoc_client_pool_try_pop()
+are configured with the same SSL settings.
+The mongoc_ssl_opt_t struct is copied by the pool along with the strings
+it points to (pem_file , pem_pwd , ca_file , ca_dir , and
+crl_file ) so they don’t have to remain valid after the call to
+mongoc_client_pool_set_ssl_opts .
+A call to mongoc_client_pool_set_ssl_opts overrides all TLS options set
+through the connection string with which the mongoc_client_pool_t was
+constructed.
+
+
+
+Thread Safety
+This function can only be called once on a pool, and must be called before the first call to mongoc_client_pool_pop() .
+
+
+Availability
+This feature requires that the MongoDB C driver was compiled with -DENABLE_SSL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_pool_t.html b/libmongoc/1.23.4/mongoc_client_pool_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..5204a43f1f4d73bca7f021b519fd0fa6ec5d0b7d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_pool_t.html
@@ -0,0 +1,319 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_pool_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_pool_t
+A connection pool for multi-threaded programs. See Connection Pooling .
+
+Synopsis
+typedef struct _mongoc_client_pool_t mongoc_client_pool_t
+
+
+mongoc_client_pool_t is the basis for multi-threading in the MongoDB C driver. Since mongoc_client_t structures are not thread-safe, this structure is used to retrieve a new mongoc_client_t for a given thread. This structure is thread-safe , except for its destructor method, mongoc_client_pool_destroy() , which is not thread-safe and must only be called from one thread.
+
+
+Example
+
+
example-pool.c
+
/* gcc example-pool.c -o example-pool $(pkg-config --cflags --libs
+ * libmongoc-1.0) */
+
+/* ./example-pool [CONNECTION_STRING] */
+
+#include <mongoc/mongoc.h>
+#include <pthread.h>
+#include <stdio.h>
+
+static pthread_mutex_t mutex ;
+static bool in_shutdown = false ;
+
+static void *
+worker ( void * data )
+{
+ mongoc_client_pool_t * pool = data ;
+ mongoc_client_t * client ;
+ bson_t ping = BSON_INITIALIZER ;
+ bson_error_t error ;
+ bool r ;
+
+ BSON_APPEND_INT32 ( & ping , "ping" , 1 );
+
+ while ( true ) {
+ client = mongoc_client_pool_pop ( pool );
+ /* Do something with client. If you are writing an HTTP server, you
+ * probably only want to hold onto the client for the portion of the
+ * request performing database queries.
+ */
+ r = mongoc_client_command_simple (
+ client , "admin" , & ping , NULL , NULL , & error );
+
+ if ( ! r ) {
+ fprintf ( stderr , "%s \n " , error . message );
+ }
+
+ mongoc_client_pool_push ( pool , client );
+
+ pthread_mutex_lock ( & mutex );
+ if ( in_shutdown || ! r ) {
+ pthread_mutex_unlock ( & mutex );
+ break ;
+ }
+
+ pthread_mutex_unlock ( & mutex );
+ }
+
+ bson_destroy ( & ping );
+ return NULL ;
+}
+
+int
+main ( int argc , char * argv [])
+{
+ const char * uri_string = "mongodb://127.0.0.1/?appname=pool-example" ;
+ mongoc_uri_t * uri ;
+ bson_error_t error ;
+ mongoc_client_pool_t * pool ;
+ pthread_t threads [ 10 ];
+ unsigned i ;
+ void * ret ;
+
+ pthread_mutex_init ( & mutex , NULL );
+ mongoc_init ();
+
+ if ( argc > 1 ) {
+ uri_string = argv [ 1 ];
+ }
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ pool = mongoc_client_pool_new ( uri );
+ mongoc_client_pool_set_error_api ( pool , 2 );
+
+ for ( i = 0 ; i < 10 ; i ++ ) {
+ pthread_create ( & threads [ i ], NULL , worker , pool );
+ }
+
+ sleep ( 10 );
+ pthread_mutex_lock ( & mutex );
+ in_shutdown = true ;
+ pthread_mutex_unlock ( & mutex );
+
+ for ( i = 0 ; i < 10 ; i ++ ) {
+ pthread_join ( threads [ i ], & ret );
+ }
+
+ mongoc_client_pool_destroy ( pool );
+ mongoc_uri_destroy ( uri );
+
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_pool_try_pop.html b/libmongoc/1.23.4/mongoc_client_pool_try_pop.html
new file mode 100644
index 0000000000000000000000000000000000000000..d5e7f3b8639b64d2e7b6622c911b8b3751e2a30c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_pool_try_pop.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_pool_try_pop() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_pool_try_pop()
+
+Synopsis
+mongoc_client_t *
+mongoc_client_pool_try_pop ( mongoc_client_pool_t * pool )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+This function is identical to mongoc_client_pool_pop() except it will return NULL instead of blocking for a client to become available.
+
+
+
+Returns
+A mongoc_client_t if one is immediately available, otherwise NULL .
+
+
+Thread Safety
+This function is safe to call from multiple threads.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_read_command_with_opts.html b/libmongoc/1.23.4/mongoc_client_read_command_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..6b1d1487736d1c8526679c2bfa9996ecc39c6273
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_read_command_with_opts.html
@@ -0,0 +1,409 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_read_command_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_read_command_with_opts()
+
+Synopsis
+bool
+mongoc_client_read_command_with_opts ( mongoc_client_t * client ,
+ const char * db_name ,
+ const bson_t * command ,
+ const mongoc_read_prefs_t * read_prefs ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+Execute a command on the server, applying logic that is specific to commands that read, and taking the MongoDB server version into account. To send a raw command to the server without any of this logic, use mongoc_client_command_simple() .
+Use this function for commands that read such as “count” or “distinct”.
+Read preferences, read concern, and collation can be overridden by various sources. In a transaction, read concern and write concern are prohibited in opts and the read preference must be primary or NULL. The highest-priority sources for these options are listed first in the following table. No write concern is applied.
+
+
+Read Preferences
+Read Concern
+Collation
+
+
+
+read_prefs
+opts
+opts
+
+Transaction
+Transaction
+
+
+client
+
+
+
+
+
+See the example for transactions and for the “distinct” command with opts .
+reply is always initialized, and must be freed with bson_destroy() .
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+Retry logic occurs regardless of the underlying command. Retrying mapReduce has the potential for degraded performance.
+Retrying a getMore command has the potential to miss results. For those commands, use generic command helpers (like mongoc_client_command_with_opts() ) instead.
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+Example
+
+
example-command-with-opts.c
+
/*
+
+Demonstrates how to prepare options for mongoc_client_read_command_with_opts and
+mongoc_client_write_command_with_opts. First it calls "cloneCollectionAsCapped"
+command with "writeConcern" option, then "distinct" command with "collation" and
+"readConcern" options,
+
+Start a MongoDB 3.4 replica set with --enableMajorityReadConcern and insert two
+documents:
+
+$ mongo
+MongoDB Enterprise replset:PRIMARY> db.my_collection.insert({x: 1, y: "One"})
+WriteResult({ "nInserted" : 1 })
+MongoDB Enterprise replset:PRIMARY> db.my_collection.insert({x: 2, y: "Two"})
+WriteResult({ "nInserted" : 1 })
+
+Build and run the example:
+
+gcc example-command-with-opts.c -o example-command-with-opts $(pkg-config
+--cflags --libs libmongoc-1.0)
+./example-command-with-opts [CONNECTION_STRING]
+cloneCollectionAsCapped: { "ok" : 1 }
+distinct: { "values" : [ 1, 2 ], "ok" : 1 }
+
+*/
+
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_client_t * client ;
+ const char * uri_string = "mongodb://127.0.0.1/?appname=client-example" ;
+ mongoc_uri_t * uri ;
+ bson_t * cmd ;
+ bson_t * opts ;
+ mongoc_write_concern_t * write_concern ;
+ mongoc_read_prefs_t * read_prefs ;
+ mongoc_read_concern_t * read_concern ;
+ bson_t reply ;
+ bson_error_t error ;
+ char * json ;
+
+ mongoc_init ();
+
+ if ( argc > 1 ) {
+ uri_string = argv [ 1 ];
+ }
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+
+ cmd = BCON_NEW ( "cloneCollectionAsCapped" ,
+ BCON_UTF8 ( "my_collection" ),
+ "toCollection" ,
+ BCON_UTF8 ( "my_capped_collection" ),
+ "size" ,
+ BCON_INT64 ( 1024 * 1024 ));
+
+ /* include write concern "majority" in command options */
+ write_concern = mongoc_write_concern_new ();
+ mongoc_write_concern_set_wmajority ( write_concern , 10000 /* wtimeoutMS */ );
+ opts = bson_new ();
+ mongoc_write_concern_append ( write_concern , opts );
+
+ if ( mongoc_client_write_command_with_opts (
+ client , "test" , cmd , opts , & reply , & error )) {
+ json = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "cloneCollectionAsCapped: %s \n " , json );
+ bson_free ( json );
+ } else {
+ fprintf ( stderr , "cloneCollectionAsCapped: %s \n " , error . message );
+ }
+
+ bson_free ( cmd );
+ bson_free ( opts );
+
+ /* distinct values of "x" in "my_collection" where "y" sorts after "one" */
+ cmd = BCON_NEW ( "distinct" ,
+ BCON_UTF8 ( "my_collection" ),
+ "key" ,
+ BCON_UTF8 ( "x" ),
+ "query" ,
+ "{" ,
+ "y" ,
+ "{" ,
+ "$gt" ,
+ BCON_UTF8 ( "one" ),
+ "}" ,
+ "}" );
+
+ read_prefs = mongoc_read_prefs_new ( MONGOC_READ_SECONDARY );
+
+ /* "One" normally sorts before "one"; make "One" sort after "one" */
+ opts = BCON_NEW ( "collation" ,
+ "{" ,
+ "locale" ,
+ BCON_UTF8 ( "en_US" ),
+ "caseFirst" ,
+ BCON_UTF8 ( "lower" ),
+ "}" );
+
+ /* add a read concern to "opts" */
+ read_concern = mongoc_read_concern_new ();
+ mongoc_read_concern_set_level ( read_concern ,
+ MONGOC_READ_CONCERN_LEVEL_MAJORITY );
+
+ mongoc_read_concern_append ( read_concern , opts );
+
+ if ( mongoc_client_read_command_with_opts (
+ client , "test" , cmd , read_prefs , opts , & reply , & error )) {
+ json = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "distinct: %s \n " , json );
+ bson_free ( json );
+ } else {
+ fprintf ( stderr , "distinct: %s \n " , error . message );
+ }
+
+ bson_destroy ( cmd );
+ bson_destroy ( opts );
+ bson_destroy ( & reply );
+ mongoc_read_prefs_destroy ( read_prefs );
+ mongoc_read_concern_destroy ( read_concern );
+ mongoc_write_concern_destroy ( write_concern );
+ mongoc_uri_destroy ( uri );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_read_write_command_with_opts.html b/libmongoc/1.23.4/mongoc_client_read_write_command_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..5014911361fae4434835aa115ba830731fd2b707
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_read_write_command_with_opts.html
@@ -0,0 +1,257 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_read_write_command_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_read_write_command_with_opts()
+
+Synopsis
+bool
+mongoc_client_read_write_command_with_opts (
+ mongoc_client_t * client ,
+ const char * db_name ,
+ const bson_t * command ,
+ const mongoc_read_prefs_t * read_prefs /* UNUSED */ ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+Execute a command on the server, applying logic for commands that both read and write, and taking the MongoDB server version into account. To send a raw command to the server without any of this logic, use mongoc_client_command_simple() .
+Use this function for commands that both read and write, such as “mapReduce” with an output collection.
+Read and write concern and collation can be overridden by various sources. In a transaction, read concern and write concern are prohibited in opts . The highest-priority sources for these options are listed first in the following table. Read preferences are not applied. The write concern is omitted for MongoDB before 3.4.
+
+
+Read Concern
+Write Concern
+Collation
+
+
+
+opts
+opts
+opts
+
+Transaction
+Transaction
+
+
+client
+client
+
+
+
+
+See the example for transactions and for the “distinct” command with opts .
+reply is always initialized, and must be freed with bson_destroy() .
+(The mongoc_read_prefs_t parameter was included by mistake when this function was introduced in libmongoc 1.5. A command that writes must not obey a read preference.)
+
+
+Parameters
+
+client : A mongoc_client_t .
+db_name : The name of the database to run the command on.
+command : A bson_t containing the command specification.
+read_prefs : Ignored.
+opts : A bson_t containing additional options.
+reply : A location for the resulting document.
+error : An optional location for a bson_error_t or NULL .
+
+opts may be NULL or a BSON document with additional command options:
+
+Consult the MongoDB Manual entry on Database Commands for each command’s arguments.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_reset.html b/libmongoc/1.23.4/mongoc_client_reset.html
new file mode 100644
index 0000000000000000000000000000000000000000..1941b979e2c22f506199f1ba24a33c4d0c625226
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_reset.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_reset() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_reset()
+
+Synopsis
+void
+mongoc_client_reset ( mongoc_client_t * client );
+
+
+Call this method in the child after forking to invalidate the mongoc_client_t .
+
+
+Description
+Calling mongoc_client_reset() prevents resource cleanup in the child process from interfering with the parent process.
+This method causes the client to clear its session pool without sending endSessions. It also increments an internal generation counter on the given client. After this method is called, cursors from previous generations will not issue a killCursors command when they are destroyed. Client sessions from previous generations cannot be used and should be destroyed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_select_server.html b/libmongoc/1.23.4/mongoc_client_select_server.html
new file mode 100644
index 0000000000000000000000000000000000000000..c82c485d74e5e62c9f09e87e18128176cce62c23
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_select_server.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_select_server() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_select_server()
+
+Synopsis
+mongoc_server_description_t *
+mongoc_client_select_server ( mongoc_client_t * client ,
+ bool for_writes ,
+ const mongoc_read_prefs_t * prefs ,
+ bson_error_t * error ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Choose a server for an operation, according to the logic described in the Server Selection Spec.
+Use this function only for building a language driver that wraps the C Driver. When writing applications in C, higher-level functions automatically select a suitable server.
+
+
+Parameters
+
+client : A mongoc_client_t .
+for_writes : Whether to choose a server suitable for writes or reads.
+prefs : An optional mongoc_read_prefs_t . If for_writes is true, prefs must be NULL. Otherwise, use prefs to customize server selection, or pass NULL to use read preference PRIMARY.
+error : An optional location for a bson_error_t or NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_abort_transaction.html b/libmongoc/1.23.4/mongoc_client_session_abort_transaction.html
new file mode 100644
index 0000000000000000000000000000000000000000..3b56bcef5a3450407e31c1ca4a6433533a8d04a3
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_abort_transaction.html
@@ -0,0 +1,303 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_abort_transaction() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_abort_transaction()
+
+Synopsis
+bool
+mongoc_client_session_abort_transaction ( mongoc_client_session_t * session ,
+ bson_error_t * error );
+
+
+Abort a multi-document transaction.
+
+
+
+Return
+Returns true if the transaction was aborted. Returns false and sets error if there are invalid arguments, such as a session with no transaction in progress. Network or server errors are ignored.
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_advance_cluster_time.html b/libmongoc/1.23.4/mongoc_client_session_advance_cluster_time.html
new file mode 100644
index 0000000000000000000000000000000000000000..4aa322b1f51bc426321e31a63e242c538cb2b473
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_advance_cluster_time.html
@@ -0,0 +1,300 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_advance_cluster_time() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_advance_cluster_time()
+
+Synopsis
+void
+mongoc_client_session_advance_cluster_time ( mongoc_client_session_t * session ,
+ const bson_t * cluster_time );
+
+
+Advance the cluster time for a session. Has an effect only if the new cluster time is greater than the session’s current cluster time.
+Use mongoc_client_session_advance_operation_time() and mongoc_client_session_advance_cluster_time() to copy the operationTime and clusterTime from another session, ensuring subsequent operations in this session are causally consistent with the last operation in the other session
+
+
+Parameters
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_advance_operation_time.html b/libmongoc/1.23.4/mongoc_client_session_advance_operation_time.html
new file mode 100644
index 0000000000000000000000000000000000000000..a73fcf0b6642b73825923b97c9d66da68652cb6c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_advance_operation_time.html
@@ -0,0 +1,302 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_advance_operation_time() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_advance_operation_time()
+
+Synopsis
+void
+mongoc_client_session_advance_operation_time ( mongoc_client_session_t * session ,
+ uint32_t timestamp ,
+ uint32_t increment );
+
+
+Advance the session’s operation time, expressed as a BSON Timestamp with timestamp and increment components. Has an effect only if the new operation time is greater than the session’s current operation time.
+Use mongoc_client_session_advance_operation_time() and mongoc_client_session_advance_cluster_time() to copy the operationTime and clusterTime from another session, ensuring subsequent operations in this session are causally consistent with the last operation in the other session
+
+
+Parameters
+
+session : A mongoc_client_session_t .
+timestamp : The new operationTime’s timestamp component.
+increment : The new operationTime’s increment component.
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_append.html b/libmongoc/1.23.4/mongoc_client_session_append.html
new file mode 100644
index 0000000000000000000000000000000000000000..d9dc465cfd54e83534b348dc5bb1e6a9a4397042
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_append.html
@@ -0,0 +1,211 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_append() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_append()
+
+Synopsis
+bool
+mongoc_client_session_append ( const mongoc_client_session_t * client_session ,
+ bson_t * opts ,
+ bson_error_t * error );
+
+
+
+
+
+Description
+This function appends a logical session id to command options. Use it to configure a session for any function that takes an options document, such as mongoc_client_write_command_with_opts() .
+It is an error to use a session for unacknowledged writes.
+
+
+Returns
+Returns true on success. If any arguments are invalid, returns false and fills out error .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_commit_transaction.html b/libmongoc/1.23.4/mongoc_client_session_commit_transaction.html
new file mode 100644
index 0000000000000000000000000000000000000000..dd1bc798ecc27d69985b6dc269c94d2380b9c66a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_commit_transaction.html
@@ -0,0 +1,306 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_commit_transaction() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_commit_transaction()
+
+Synopsis
+bool
+mongoc_client_session_commit_transaction ( mongoc_client_session_t * session ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+Commit a multi-document transaction.
+
+
+
+Return
+Returns true if the transaction was committed. Returns false and sets error if there are invalid arguments, such as a session with no transaction in progress, or if there is a server or network error.
+If a reply is supplied, it is always initialized and must be freed with bson_destroy() .
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_destroy.html b/libmongoc/1.23.4/mongoc_client_session_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..d72840045f6ebc8e483b7e49b5a7099cc34e52ee
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_destroy.html
@@ -0,0 +1,298 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_destroy()
+
+Synopsis
+void
+mongoc_client_session_destroy ( mongoc_client_session_t * session );
+
+
+End a session, returning its session id to the pool, and free all client resources associated with the session. If a multi-document transaction is in progress, abort it. Does nothing if session is NULL.
+See the example code for mongoc_client_session_t .
+
+
+Parameters
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_get_client.html b/libmongoc/1.23.4/mongoc_client_session_get_client.html
new file mode 100644
index 0000000000000000000000000000000000000000..a8cff1438db2635e929cec3a3109859d8866266b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_get_client.html
@@ -0,0 +1,301 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_get_client() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_get_client()
+
+
+
+Returns
+A mongoc_client_t that should not be freed.
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_get_cluster_time.html b/libmongoc/1.23.4/mongoc_client_session_get_cluster_time.html
new file mode 100644
index 0000000000000000000000000000000000000000..476b7064e4a97799be6fe0b973186cce0d2fc67f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_get_cluster_time.html
@@ -0,0 +1,301 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_get_cluster_time() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_get_cluster_time()
+
+Synopsis
+const bson_t *
+mongoc_client_session_get_cluster_time ( const mongoc_client_session_t * session );
+
+
+Get the session’s clusterTime as a BSON document.
+
+
+
+Returns
+If the session has not been used for any operation and mongoc_client_session_advance_cluster_time() has not been called, a bson_t that is valid only for the lifetime of session . Otherwise, NULL .
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_get_dirty.html b/libmongoc/1.23.4/mongoc_client_session_get_dirty.html
new file mode 100644
index 0000000000000000000000000000000000000000..df5278ceff3f5917081c2c52e9239ffcbb17f4a6
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_get_dirty.html
@@ -0,0 +1,305 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_get_dirty() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_get_dirty()
+
+Synopsis
+bool
+mongoc_client_session_get_dirty ( const mongoc_client_session_t * session );
+
+
+Indicates whether session has been marked “dirty” as defined in the driver sessions specification .
+
+
+
+Description
+This function is intended for use by drivers that wrap libmongoc. It is not useful in client applications.
+
+
+Returns
+A boolean indicating whether the session has been marked “dirty”.
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_get_lsid.html b/libmongoc/1.23.4/mongoc_client_session_get_lsid.html
new file mode 100644
index 0000000000000000000000000000000000000000..db16cfc6e5afe3496a0afd26f1cf0562f83ddbe0
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_get_lsid.html
@@ -0,0 +1,301 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_get_lsid() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_get_lsid()
+
+Synopsis
+const bson_t *
+mongoc_client_session_get_lsid ( mongoc_client_session_t * session );
+
+
+Get the server-side “logical session ID” associated with this mongoc_client_session_t as a BSON document.
+
+
+
+Returns
+A bson_t that is valid only for the lifetime of session .
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_get_operation_time.html b/libmongoc/1.23.4/mongoc_client_session_get_operation_time.html
new file mode 100644
index 0000000000000000000000000000000000000000..1ea2cda5f967263065d31144e8e5238fdb56e2fa
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_get_operation_time.html
@@ -0,0 +1,301 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_get_operation_time() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_get_operation_time()
+
+Synopsis
+void
+mongoc_client_session_get_operation_time ( const mongoc_client_session_t * session ,
+ uint32_t * timestamp ,
+ uint32_t * increment );
+
+
+Get the session’s operationTime, expressed as a BSON Timestamp with timestamp and increment components. If the session has not been used for any operations, the timestamp and increment are 0.
+
+
+Parameters
+
+session : A mongoc_client_session_t .
+timestamp : A pointer to a uint32_t to receive the timestamp component.
+increment : A pointer to a uint32_t to receive the increment component.
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_get_opts.html b/libmongoc/1.23.4/mongoc_client_session_get_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..b09b63cdfb0b830cb4b8b8813c2bdc919b63a098
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_get_opts.html
@@ -0,0 +1,301 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_get_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_get_opts()
+
+Synopsis
+const mongoc_session_opt_t *
+mongoc_client_session_get_opts ( const mongoc_client_session_t * session );
+
+
+Get a reference to the mongoc_session_opt_t with which this session was configured.
+
+
+
+Returns
+A mongoc_session_opt_t that is valid only for the lifetime of session .
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_get_server_id.html b/libmongoc/1.23.4/mongoc_client_session_get_server_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..bd17e9a66cf75bbfce035e325040b8ed78bc39f3
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_get_server_id.html
@@ -0,0 +1,301 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_get_server_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_get_server_id()
+
+Synopsis
+uint32_t
+mongoc_client_session_get_server_id ( const mongoc_client_session_t * session );
+
+
+Get the “server ID” of the mongos this mongoc_client_session_t is pinned to.
+
+
+
+Returns
+A server ID or 0 if this mongoc_client_session_t is not pinned.
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_get_transaction_state.html b/libmongoc/1.23.4/mongoc_client_session_get_transaction_state.html
new file mode 100644
index 0000000000000000000000000000000000000000..ad6a8be665428d90a3e9703d1dfc87113d926073
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_get_transaction_state.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_get_transaction_state() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_get_transaction_state()
+
+Synopsis
+mongoc_transaction_state_t
+mongoc_client_session_get_transaction_state ( const mongoc_client_session_t * session );
+
+
+Returns the current transaction state for this session.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_in_transaction.html b/libmongoc/1.23.4/mongoc_client_session_in_transaction.html
new file mode 100644
index 0000000000000000000000000000000000000000..e923ab449ba0fa61736910b2ea8abf68c5d0593f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_in_transaction.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_in_transaction() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_in_transaction()
+
+Synopsis
+bool
+mongoc_client_session_in_transaction ( const mongoc_client_session_t * session );
+
+
+Check whether a multi-document transaction is in progress for this session.
+
+
+
+Return
+Returns true if a transaction was started and has not been committed or aborted, otherwise false .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_start_transaction.html b/libmongoc/1.23.4/mongoc_client_session_start_transaction.html
new file mode 100644
index 0000000000000000000000000000000000000000..f73b9ffed56f2414b28d8005063004b4605495c2
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_start_transaction.html
@@ -0,0 +1,495 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_start_transaction() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_start_transaction()
+
+
+
+Return
+Returns true if the transaction was started. Returns false and sets error if there are invalid arguments, such as a session with a transaction already in progress.
+
+
+Example
+The following example demonstrates how to use error labels to reliably execute a multi-document transaction despite network errors and other transient failures.
+
+
example-transaction.c
+
/* gcc example-transaction.c -o example-transaction \
+ * $(pkg-config --cflags --libs libmongoc-1.0) */
+
+/* ./example-transaction [CONNECTION_STRING] */
+
+#include <stdio.h>
+#include <mongoc/mongoc.h>
+
+
+int
+main ( int argc , char * argv [])
+{
+ int exit_code = EXIT_FAILURE ;
+
+ mongoc_client_t * client = NULL ;
+ mongoc_database_t * database = NULL ;
+ mongoc_collection_t * collection = NULL ;
+ mongoc_client_session_t * session = NULL ;
+ mongoc_session_opt_t * session_opts = NULL ;
+ mongoc_transaction_opt_t * default_txn_opts = NULL ;
+ mongoc_transaction_opt_t * txn_opts = NULL ;
+ mongoc_read_concern_t * read_concern = NULL ;
+ mongoc_write_concern_t * write_concern = NULL ;
+ const char * uri_string = "mongodb://127.0.0.1/?appname=transaction-example" ;
+ mongoc_uri_t * uri ;
+ bson_error_t error ;
+ bson_t * doc = NULL ;
+ bson_t * insert_opts = NULL ;
+ int32_t i ;
+ int64_t start ;
+ bson_t reply = BSON_INITIALIZER ;
+ char * reply_json ;
+ bool r ;
+
+ mongoc_init ();
+
+ if ( argc > 1 ) {
+ uri_string = argv [ 1 ];
+ }
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ MONGOC_ERROR ( "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ goto done ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ goto done ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+ database = mongoc_client_get_database ( client , "example-transaction" );
+
+ /* inserting into a nonexistent collection normally creates it, but a
+ * collection can't be created in a transaction; create it now */
+ collection =
+ mongoc_database_create_collection ( database , "collection" , NULL , & error );
+
+ if ( ! collection ) {
+ /* code 48 is NamespaceExists, see error_codes.err in mongodb source */
+ if ( error . code == 48 ) {
+ collection = mongoc_database_get_collection ( database , "collection" );
+ } else {
+ MONGOC_ERROR ( "Failed to create collection: %s" , error . message );
+ goto done ;
+ }
+ }
+
+ /* a transaction's read preferences, read concern, and write concern can be
+ * set on the client, on the default transaction options, or when starting
+ * the transaction. for the sake of this example, set read concern on the
+ * default transaction options. */
+ default_txn_opts = mongoc_transaction_opts_new ();
+ read_concern = mongoc_read_concern_new ();
+ mongoc_read_concern_set_level ( read_concern , "snapshot" );
+ mongoc_transaction_opts_set_read_concern ( default_txn_opts , read_concern );
+ session_opts = mongoc_session_opts_new ();
+ mongoc_session_opts_set_default_transaction_opts ( session_opts ,
+ default_txn_opts );
+
+ session = mongoc_client_start_session ( client , session_opts , & error );
+ if ( ! session ) {
+ MONGOC_ERROR ( "Failed to start session: %s" , error . message );
+ goto done ;
+ }
+
+ /* in this example, set write concern when starting the transaction */
+ txn_opts = mongoc_transaction_opts_new ();
+ write_concern = mongoc_write_concern_new ();
+ mongoc_write_concern_set_wmajority ( write_concern , 1000 /* wtimeout */ );
+ mongoc_transaction_opts_set_write_concern ( txn_opts , write_concern );
+
+ insert_opts = bson_new ();
+ if ( ! mongoc_client_session_append ( session , insert_opts , & error )) {
+ MONGOC_ERROR ( "Could not add session to opts: %s" , error . message );
+ goto done ;
+ }
+
+retry_transaction :
+ r = mongoc_client_session_start_transaction ( session , txn_opts , & error );
+ if ( ! r ) {
+ MONGOC_ERROR ( "Failed to start transaction: %s" , error . message );
+ goto done ;
+ }
+
+ /* insert two documents - on error, retry the whole transaction */
+ for ( i = 0 ; i < 2 ; i ++ ) {
+ doc = BCON_NEW ( "_id" , BCON_INT32 ( i ));
+ bson_destroy ( & reply );
+ r = mongoc_collection_insert_one (
+ collection , doc , insert_opts , & reply , & error );
+
+ bson_destroy ( doc );
+
+ if ( ! r ) {
+ MONGOC_ERROR ( "Insert failed: %s" , error . message );
+ mongoc_client_session_abort_transaction ( session , NULL );
+
+ /* a network error, primary failover, or other temporary error in a
+ * transaction includes {"errorLabels": ["TransientTransactionError"]},
+ * meaning that trying the entire transaction again may succeed
+ */
+ if ( mongoc_error_has_label ( & reply , "TransientTransactionError" )) {
+ goto retry_transaction ;
+ }
+
+ goto done ;
+ }
+
+ reply_json = bson_as_json ( & reply , NULL );
+ printf ( "%s \n " , reply_json );
+ bson_free ( reply_json );
+ }
+
+ /* in case of transient errors, retry for 5 seconds to commit transaction */
+ start = bson_get_monotonic_time ();
+ while ( bson_get_monotonic_time () - start < 5 * 1000 * 1000 ) {
+ bson_destroy ( & reply );
+ r = mongoc_client_session_commit_transaction ( session , & reply , & error );
+ if ( r ) {
+ /* success */
+ break ;
+ } else {
+ MONGOC_ERROR ( "Warning: commit failed: %s" , error . message );
+ if ( mongoc_error_has_label ( & reply , "TransientTransactionError" )) {
+ goto retry_transaction ;
+ } else if ( mongoc_error_has_label ( & reply ,
+ "UnknownTransactionCommitResult" )) {
+ /* try again to commit */
+ continue ;
+ }
+
+ /* unrecoverable error trying to commit */
+ break ;
+ }
+ }
+
+ exit_code = EXIT_SUCCESS ;
+
+done :
+ bson_destroy ( & reply );
+ bson_destroy ( insert_opts );
+ mongoc_write_concern_destroy ( write_concern );
+ mongoc_read_concern_destroy ( read_concern );
+ mongoc_transaction_opts_destroy ( txn_opts );
+ mongoc_transaction_opts_destroy ( default_txn_opts );
+ mongoc_client_session_destroy ( session );
+ mongoc_collection_destroy ( collection );
+ mongoc_database_destroy ( database );
+ mongoc_uri_destroy ( uri );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return exit_code ;
+}
+
+
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_t.html b/libmongoc/1.23.4/mongoc_client_session_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..c14aa2b53e2ee3c44195bc3a234ad4111a38ff03
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_t.html
@@ -0,0 +1,365 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_t
+Use a session for a sequence of operations, optionally with causal consistency. See the MongoDB Manual Entry for Causal Consistency .
+
+
+Example
+
+
example-session.c
+
/* gcc example-session.c -o example-session \
+ * $(pkg-config --cflags --libs libmongoc-1.0) */
+
+/* ./example-session [CONNECTION_STRING] */
+
+#include <stdio.h>
+#include <mongoc/mongoc.h>
+
+
+int
+main ( int argc , char * argv [])
+{
+ int exit_code = EXIT_FAILURE ;
+
+ mongoc_client_t * client = NULL ;
+ const char * uri_string = "mongodb://127.0.0.1/?appname=session-example" ;
+ mongoc_uri_t * uri = NULL ;
+ mongoc_client_session_t * client_session = NULL ;
+ mongoc_collection_t * collection = NULL ;
+ bson_error_t error ;
+ bson_t * selector = NULL ;
+ bson_t * update = NULL ;
+ bson_t * update_opts = NULL ;
+ bson_t * find_opts = NULL ;
+ mongoc_read_prefs_t * secondary = NULL ;
+ mongoc_cursor_t * cursor = NULL ;
+ const bson_t * doc ;
+ char * str ;
+ bool r ;
+
+ mongoc_init ();
+
+ if ( argc > 1 ) {
+ uri_string = argv [ 1 ];
+ }
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ goto done ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ goto done ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+
+ /* pass NULL for options - by default the session is causally consistent */
+ client_session = mongoc_client_start_session ( client , NULL , & error );
+ if ( ! client_session ) {
+ fprintf ( stderr , "Failed to start session: %s \n " , error . message );
+ goto done ;
+ }
+
+ collection = mongoc_client_get_collection ( client , "test" , "collection" );
+ selector = BCON_NEW ( "_id" , BCON_INT32 ( 1 ));
+ update = BCON_NEW ( "$inc" , "{" , "x" , BCON_INT32 ( 1 ), "}" );
+ update_opts = bson_new ();
+ if ( ! mongoc_client_session_append ( client_session , update_opts , & error )) {
+ fprintf ( stderr , "Could not add session to opts: %s \n " , error . message );
+ goto done ;
+ }
+
+ r = mongoc_collection_update_one (
+ collection , selector , update , update_opts , NULL /* reply */ , & error );
+
+ if ( ! r ) {
+ fprintf ( stderr , "Update failed: %s \n " , error . message );
+ goto done ;
+ }
+
+ bson_destroy ( selector );
+ selector = BCON_NEW ( "_id" , BCON_INT32 ( 1 ));
+ secondary = mongoc_read_prefs_new ( MONGOC_READ_SECONDARY );
+
+ find_opts = BCON_NEW ( "maxTimeMS" , BCON_INT32 ( 2000 ));
+ if ( ! mongoc_client_session_append ( client_session , find_opts , & error )) {
+ fprintf ( stderr , "Could not add session to opts: %s \n " , error . message );
+ goto done ;
+ };
+
+ /* read from secondary. since we're in a causally consistent session, the
+ * data is guaranteed to reflect the update we did on the primary. the query
+ * blocks waiting for the secondary to catch up, if necessary, or times out
+ * and fails after 2000 ms.
+ */
+ cursor = mongoc_collection_find_with_opts (
+ collection , selector , find_opts , secondary );
+
+ while ( mongoc_cursor_next ( cursor , & doc )) {
+ str = bson_as_json ( doc , NULL );
+ fprintf ( stdout , "%s \n " , str );
+ bson_free ( str );
+ }
+
+ if ( mongoc_cursor_error ( cursor , & error )) {
+ fprintf ( stderr , "Cursor Failure: %s \n " , error . message );
+ goto done ;
+ }
+
+ exit_code = EXIT_SUCCESS ;
+
+done :
+ if ( find_opts ) {
+ bson_destroy ( find_opts );
+ }
+ if ( update ) {
+ bson_destroy ( update );
+ }
+ if ( selector ) {
+ bson_destroy ( selector );
+ }
+ if ( update_opts ) {
+ bson_destroy ( update_opts );
+ }
+ if ( secondary ) {
+ mongoc_read_prefs_destroy ( secondary );
+ }
+ /* destroy cursor, collection, session before the client they came from */
+ if ( cursor ) {
+ mongoc_cursor_destroy ( cursor );
+ }
+ if ( collection ) {
+ mongoc_collection_destroy ( collection );
+ }
+ if ( client_session ) {
+ mongoc_client_session_destroy ( client_session );
+ }
+ if ( uri ) {
+ mongoc_uri_destroy ( uri );
+ }
+ if ( client ) {
+ mongoc_client_destroy ( client );
+ }
+
+ mongoc_cleanup ();
+
+ return exit_code ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_with_transaction.html b/libmongoc/1.23.4/mongoc_client_session_with_transaction.html
new file mode 100644
index 0000000000000000000000000000000000000000..d06cd1f8d45512ce6a915b3bca068c708771b17e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_with_transaction.html
@@ -0,0 +1,405 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_with_transaction() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_with_transaction()
+
+Synopsis
+bool
+mongoc_client_session_with_transaction ( mongoc_client_session_t * session ,
+ mongoc_client_session_with_transaction_cb_t cb ,
+ const mongoc_transaction_opt_t * opts ,
+ void * ctx ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+This method will start a new transaction on session , run cb , and then commit the transaction. If it cannot commit the transaction, the entire sequence may be retried, and cb may be run multiple times. ctx will be passed to cb each time it is called.
+This method has an internal time limit of 120 seconds, and will retry until that time limit is reached. This timeout is not configurable.
+cb should not attempt to start new transactions, but should simply run operations meant to be contained within a transaction. The cb does not need to commit transactions; this is handled by the mongoc_client_session_with_transaction() . If cb does commit or abort a transaction, however, this method will return without taking further action.
+The parameter reply is initialized even upon failure to simplify memory management.
+
+
+
+Return
+Returns true if the transaction was completed successfully. Otherwise, returns false in case of failure. In cases of failure error will also be set, except if the passed-in cb fails without setting error . If a non-NULL reply is passed in, reply will be set to the value of the last server response, except if the passed-in cb fails without setting a reply .
+
+
+Example
+
+
Use with_transaction() to run a callback within a transaction
+
/* gcc example-with-transaction-cb.c -o example-with-transaction-cb $(pkg-config
+ * --cflags --libs libmongoc-1.0) */
+
+/* ./example-with-transaction-cb [CONNECTION_STRING] */
+
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+/*
+ * We pass this context object to mongoc_client_session_with_transaction() along
+ * with our callback function. The context object will be passed to our callback
+ * function when it runs, so we can access it.
+ */
+typedef struct {
+ mongoc_collection_t * collection ;
+ bson_t * insert_opts ;
+} ctx_t ;
+
+/*
+ * We pass this method as the callback to
+ * mongoc_client_session_with_transaction(). The insert that this method
+ * performs will happen inside of a new transaction.
+ */
+bool
+create_and_insert_doc ( mongoc_client_session_t * session ,
+ void * ctx ,
+ bson_t ** reply , /* out param for our server reply */
+ bson_error_t * error )
+{
+ /*
+ * mongoc_collection_insert_one requires an uninitialized, stack-allocated
+ * bson_t to receive the update result
+ */
+ bson_t local_reply ;
+ bson_t * doc = NULL ;
+ ctx_t * data = NULL ;
+ bool retval ;
+
+ /*
+ * Create a new bson document - { id: 1 }
+ */
+ doc = BCON_NEW ( "_id" , BCON_INT32 ( 1 ));
+
+ printf (
+ "Running the user-defined callback in a newly created transaction... \n " );
+ data = ( ctx_t * ) ctx ;
+ retval = mongoc_collection_insert_one (
+ data -> collection , doc , data -> insert_opts , & local_reply , error );
+
+ /*
+ * To return to the mongoc_client_session_with_transaction() method, set
+ * *reply to a new copy of our local_reply before destroying it.
+ */
+ * reply = bson_copy ( & local_reply );
+ bson_destroy ( & local_reply );
+
+ bson_destroy ( doc );
+ return retval ;
+}
+
+int
+main ( int argc , char * argv [])
+{
+ int exit_code = EXIT_FAILURE ;
+
+ mongoc_uri_t * uri = NULL ;
+ const char * uri_string = "mongodb://127.0.0.1/?appname=with-txn-cb-example" ;
+ mongoc_client_t * client = NULL ;
+ mongoc_database_t * database = NULL ;
+ mongoc_collection_t * collection = NULL ;
+ mongoc_client_session_t * session = NULL ;
+ bson_t * insert_opts = NULL ;
+ bson_t reply ;
+ ctx_t ctx ;
+ char * str ;
+ bson_error_t error ;
+
+ /*
+ * Required to initialize libmongoc's internals
+ */
+ mongoc_init ();
+
+ /*
+ * Optionally get MongoDB URI from command line
+ */
+ if ( argc > 1 ) {
+ uri_string = argv [ 1 ];
+ }
+
+ /*
+ * Safely create a MongoDB URI object from the given string
+ */
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ MONGOC_ERROR ( "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ goto done ;
+ }
+
+ /*
+ * Create a new client instance
+ */
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ goto done ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+
+ /*
+ * Get a handle on the database "example-with-txn-cb"
+ */
+ database = mongoc_client_get_database ( client , "example-with-txn-cb" );
+
+ /*
+ * Inserting into a nonexistent collection normally creates it, but a
+ * collection can't be created in a transaction; create it now
+ */
+ collection =
+ mongoc_database_create_collection ( database , "collection" , NULL , & error );
+ if ( ! collection ) {
+ /* code 48 is NamespaceExists, see error_codes.err in mongodb source */
+ if ( error . code == 48 ) {
+ collection = mongoc_database_get_collection ( database , "collection" );
+ } else {
+ MONGOC_ERROR ( "Failed to create collection: %s" , error . message );
+ goto done ;
+ }
+ }
+
+ /*
+ * Pass NULL for options - by default the session is causally consistent
+ */
+ session = mongoc_client_start_session ( client , NULL , & error );
+ if ( ! session ) {
+ MONGOC_ERROR ( "Failed to start session: %s" , error . message );
+ goto done ;
+ }
+
+ /*
+ * Append a logical session id to command options
+ */
+ insert_opts = bson_new ();
+ if ( ! mongoc_client_session_append ( session , insert_opts , & error )) {
+ MONGOC_ERROR ( "Could not add session to opts: %s" , error . message );
+ goto done ;
+ }
+
+ ctx . collection = collection ;
+ ctx . insert_opts = insert_opts ;
+
+ /*
+ * This method will start a new transaction on session, run our callback
+ * function, i.e., &create_and_insert_doc, passing &ctx as an argument and
+ * commit the transaction.
+ */
+ if ( ! mongoc_client_session_with_transaction (
+ session , & create_and_insert_doc , NULL , & ctx , & reply , & error )) {
+ MONGOC_ERROR ( "Insert failed: %s" , error . message );
+ goto done ;
+ }
+
+ str = bson_as_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+
+ exit_code = EXIT_SUCCESS ;
+
+done :
+ bson_free ( str );
+ bson_destroy ( & reply );
+ bson_destroy ( insert_opts );
+ mongoc_client_session_destroy ( session );
+ mongoc_collection_destroy ( collection );
+ mongoc_database_destroy ( database );
+ mongoc_client_destroy ( client );
+ mongoc_uri_destroy ( uri );
+
+ mongoc_cleanup ();
+
+ return exit_code ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_session_with_transaction_cb_t.html b/libmongoc/1.23.4/mongoc_client_session_with_transaction_cb_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..66a466cf4137bf8e777cb099e4d9684674cdd707
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_session_with_transaction_cb_t.html
@@ -0,0 +1,210 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_session_with_transaction_cb_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_session_with_transaction_cb_t
+
+Synopsis
+typedef bool ( * mongoc_client_session_with_transaction_cb_t ) (
+ mongoc_client_session_t * session ,
+ void * ctx ,
+ bson_t ** reply ,
+ bson_error_t * error );
+
+
+Provide this callback to mongoc_client_session_with_transaction() . The callback should run a sequence of operations meant to be contained within a transaction. The callback should not attempt to start or commit transactions.
+
+
+Parameters
+
+session : A mongoc_client_session_t .
+ctx : A void* set to the the user-provided ctx passed to mongoc_client_session_with_transaction() .
+reply : An optional location for a bson_t or NULL . The callback should set this if it runs any operations against the server and receives replies.
+error : A bson_error_t . The callback should set this if it receives any errors while running operations against the server.
+
+
+
+Return
+Returns true for success and false on failure. If cb returns false then it should also set error .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_set_apm_callbacks.html b/libmongoc/1.23.4/mongoc_client_set_apm_callbacks.html
new file mode 100644
index 0000000000000000000000000000000000000000..07154abd25a5ab99190052537188a07e0edb899d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_set_apm_callbacks.html
@@ -0,0 +1,210 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_set_apm_callbacks() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_set_apm_callbacks()
+
+Synopsis
+bool
+mongoc_client_set_apm_callbacks ( mongoc_client_t * client ,
+ mongoc_apm_callbacks_t * callbacks ,
+ void * context );
+
+
+Register a set of callbacks to receive Application Performance Monitoring events.
+The callbacks are copied by the client and may be destroyed at any time after. If a context is passed, it is the application’s responsibility to ensure context remains valid for the lifetime of the client.
+
+
+
+Returns
+Returns true on success. If any arguments are invalid, returns false and logs an error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_set_appname.html b/libmongoc/1.23.4/mongoc_client_set_appname.html
new file mode 100644
index 0000000000000000000000000000000000000000..117c87492b58fa59c0ef8509621577377f828b92
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_set_appname.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_set_appname() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_set_appname()
+
+Synopsis
+bool
+mongoc_client_set_appname ( mongoc_client_t * client , const char * appname )
+
+
+Sets the application name for this client. This string, along with other internal driver details, is sent to the server as part of the initial connection handshake (“hello” ).
+appname is copied, and doesn’t have to remain valid after the call to mongoc_client_set_appname() .
+This function will log an error and return false in the following cases:
+
+appname is longer than MONGOC_HANDSHAKE_APPNAME_MAX
+client has already initiated a handshake
+client is from a mongoc_client_pool_t
+
+
+
+Parameters
+
+client : A mongoc_client_t .
+appname : The application name, of length at most MONGOC_HANDSHAKE_APPNAME_MAX .
+
+
+
+Returns
+true if the appname is set successfully. Otherwise, false.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_set_error_api.html b/libmongoc/1.23.4/mongoc_client_set_error_api.html
new file mode 100644
index 0000000000000000000000000000000000000000..79160879915133ce74340686ccd43f40f3e98e28
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_set_error_api.html
@@ -0,0 +1,201 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_set_error_api() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_set_error_api()
+
+
+Parameters
+
+client : A mongoc_client_t .
+version : The version of the error API, either MONGOC_ERROR_API_VERSION_LEGACY or MONGOC_ERROR_API_VERSION_2 .
+
+
+
+Returns
+Returns true on success. If any arguments are invalid, returns false and logs an error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_set_read_concern.html b/libmongoc/1.23.4/mongoc_client_set_read_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..65c17e64e47404a33a0275eb1e64b2217a2f757d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_set_read_concern.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_set_read_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_set_read_concern()
+
+Synopsis
+void
+mongoc_client_set_read_concern ( mongoc_client_t * client ,
+ const mongoc_read_concern_t * read_concern );
+
+
+Sets the read concern for the client. This only affects future operations, collections, and databases inheriting from client .
+The default read concern is MONGOC_READ_CONCERN_LEVEL_LOCAL. This is the correct read concern for the great majority of applications.
+It is a programming error to call this function on a client from a mongoc_client_pool_t . For pooled clients, set the read concern with the MongoDB URI instead.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_set_read_prefs.html b/libmongoc/1.23.4/mongoc_client_set_read_prefs.html
new file mode 100644
index 0000000000000000000000000000000000000000..bae5d4f52bc085f53cdb285d66b1e51e021c342b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_set_read_prefs.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_set_read_prefs() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_set_read_prefs()
+
+Synopsis
+void
+mongoc_client_set_read_prefs ( mongoc_client_t * client ,
+ const mongoc_read_prefs_t * read_prefs );
+
+
+Sets the default read preferences to use with future operations upon client .
+The global default is to read from the replica set primary.
+It is a programming error to call this function on a client from a mongoc_client_pool_t . For pooled clients, set the read preferences with the MongoDB URI instead.
+Please see the MongoDB website for a description of Read Preferences .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_set_server_api.html b/libmongoc/1.23.4/mongoc_client_set_server_api.html
new file mode 100644
index 0000000000000000000000000000000000000000..d47c01e3210aa8ddd2d8b00e9450f5d281f005ae
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_set_server_api.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_set_server_api() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_set_server_api()
+
+Synopsis
+bool
+mongoc_client_set_server_api ( mongoc_client_t * client ,
+ const mongoc_server_api_t * api ,
+ bson_error_t * error );
+
+
+Set the API version to use for client . Once the API version is set on a client, it may not be changed to a new value. Attempting to do so will cause this method to fail and set error .
+
+
+
+Returns
+True if the version was successfully set, false if not. On failure, error will be set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_set_ssl_opts.html b/libmongoc/1.23.4/mongoc_client_set_ssl_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..4913488b284b4ca5fe8e08b94074817b9341c2c0
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_set_ssl_opts.html
@@ -0,0 +1,213 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_set_ssl_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_set_ssl_opts()
+
+Synopsis
+#ifdef MONGOC_ENABLE_SSL
+void
+mongoc_client_set_ssl_opts ( mongoc_client_t * client ,
+ const mongoc_ssl_opt_t * opts );
+#endif
+
+
+Sets the TLS (SSL) options to use when connecting to TLS enabled MongoDB servers.
+The mongoc_ssl_opt_t struct is copied by the client along with the strings
+it points to (pem_file , pem_pwd , ca_file , ca_dir , and
+crl_file ) so they don’t have to remain valid after the call to
+mongoc_client_set_ssl_opts .
+A call to mongoc_client_set_ssl_opts overrides all TLS options set through
+the connection string with which the mongoc_client_t was constructed.
+It is a programming error to call this function on a client from a
+mongoc_client_pool_t . Instead, call
+mongoc_client_pool_set_ssl_opts() on the pool before popping any
+clients.
+
+
+
+Availability
+This feature requires that the MongoDB C driver was compiled with -DENABLE_SSL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_set_stream_initiator.html b/libmongoc/1.23.4/mongoc_client_set_stream_initiator.html
new file mode 100644
index 0000000000000000000000000000000000000000..460e6c9dfe7487db5982ec4c1696b1efa059065d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_set_stream_initiator.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_set_stream_initiator() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_set_stream_initiator()
+
+Synopsis
+void
+mongoc_client_set_stream_initiator ( mongoc_client_t * client ,
+ mongoc_stream_initiator_t initiator ,
+ void * user_data );
+
+
+The mongoc_client_set_stream_initiator() function shall associate a given mongoc_client_t with a new stream initiator. This will completely replace the default transport (buffered TCP, possibly with TLS). The initiator should fulfill the mongoc_stream_t contract. user_data is passed through to the initiator callback and may be used for whatever run time customization is necessary.
+If user_data is passed, it is the application’s responsibility to ensure user_data remains valid for the lifetime of the client.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_set_write_concern.html b/libmongoc/1.23.4/mongoc_client_set_write_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..cccd46c589cbeb3eaf7586f445799c1ca4ab364c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_set_write_concern.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_set_write_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_set_write_concern()
+
+Synopsis
+void
+mongoc_client_set_write_concern ( mongoc_client_t * client ,
+ const mongoc_write_concern_t * write_concern );
+
+
+Sets the write concern for the client. This only affects future operations, collections, and databases inheriting from client .
+The default write concern is MONGOC_WRITE_CONCERN_W_DEFAULT: the driver blocks awaiting basic acknowledgement of write operations from MongoDB. This is the correct write concern for the great majority of applications.
+It is a programming error to call this function on a client from a mongoc_client_pool_t . For pooled clients, set the write concern with the MongoDB URI instead.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_start_session.html b/libmongoc/1.23.4/mongoc_client_start_session.html
new file mode 100644
index 0000000000000000000000000000000000000000..67f55cacb42621cb5db1b5aaa8ace35fb10cd1b0
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_start_session.html
@@ -0,0 +1,313 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_start_session() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_start_session()
+
+
+
+
+Errors
+This function can fail if the driver is not built with crypto support, if opts is misconfigured, or if the session is configured with options that the server does not support.
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_t.html b/libmongoc/1.23.4/mongoc_client_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..ce45e21acbfd372d5726908c3aabc7085710f77a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_t.html
@@ -0,0 +1,340 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_t
+A single-threaded MongoDB connection. See Connection Pooling .
+
+Synopsis
+typedef struct _mongoc_client_t mongoc_client_t ;
+
+typedef mongoc_stream_t * ( * mongoc_stream_initiator_t ) (
+ const mongoc_uri_t * uri ,
+ const mongoc_host_list_t * host ,
+ void * user_data ,
+ bson_error_t * error );
+
+
+mongoc_client_t is an opaque type that provides access to a MongoDB server,
+replica set, or sharded cluster. It maintains management of underlying sockets
+and routing to individual nodes based on mongoc_read_prefs_t or mongoc_write_concern_t .
+
+
+
+Thread Safety
+mongoc_client_t is NOT thread-safe and should only be used from one thread at a time. When used in multi-threaded scenarios, it is recommended that you use the thread-safe mongoc_client_pool_t to retrieve a mongoc_client_t for your thread.
+
+
+Example
+
+
example-client.c
+
/* gcc example-client.c -o example-client $(pkg-config --cflags --libs
+ * libmongoc-1.0) */
+
+/* ./example-client [CONNECTION_STRING [COLLECTION_NAME]] */
+
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ mongoc_cursor_t * cursor ;
+ bson_error_t error ;
+ const bson_t * doc ;
+ const char * collection_name = "test" ;
+ bson_t query ;
+ char * str ;
+ const char * uri_string = "mongodb://127.0.0.1/?appname=client-example" ;
+ mongoc_uri_t * uri ;
+
+ mongoc_init ();
+ if ( argc > 1 ) {
+ uri_string = argv [ 1 ];
+ }
+
+ if ( argc > 2 ) {
+ collection_name = argv [ 2 ];
+ }
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+
+ bson_init ( & query );
+ collection = mongoc_client_get_collection ( client , "test" , collection_name );
+ cursor = mongoc_collection_find_with_opts (
+ collection ,
+ & query ,
+ NULL , /* additional options */
+ NULL ); /* read prefs, NULL for default */
+
+ while ( mongoc_cursor_next ( cursor , & doc )) {
+ str = bson_as_canonical_extended_json ( doc , NULL );
+ fprintf ( stdout , "%s \n " , str );
+ bson_free ( str );
+ }
+
+ if ( mongoc_cursor_error ( cursor , & error )) {
+ fprintf ( stderr , "Cursor Failure: %s \n " , error . message );
+ return EXIT_FAILURE ;
+ }
+
+ bson_destroy ( & query );
+ mongoc_cursor_destroy ( cursor );
+ mongoc_collection_destroy ( collection );
+ mongoc_uri_destroy ( uri );
+ mongoc_client_destroy ( client );
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_watch.html b/libmongoc/1.23.4/mongoc_client_watch.html
new file mode 100644
index 0000000000000000000000000000000000000000..280a46acfb389e9a9c6807c40a3c6be7c9be7612
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_watch.html
@@ -0,0 +1,238 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_watch() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_watch()
+
+Synopsis
+mongoc_change_stream_t *
+mongoc_client_watch ( mongoc_client_t * client ,
+ const bson_t * pipeline ,
+ const bson_t * opts ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+A helper function to create a change stream. It is preferred to call this
+function over using a raw aggregation to create a change stream.
+This function uses the read preference and read concern of the client. If
+the change stream needs to re-establish connection, the same read preference
+will be used. This may happen if the change stream encounters a resumable error.
+
+
Warning
+
A change stream is only supported with majority read concern.
+
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+Parameters
+
+db : A mongoc_client_t specifying the client which the change stream listens to.
+pipeline : A bson_t representing an aggregation pipeline appended to the change stream. This may be an empty document.
+opts : A bson_t containing change stream options.
+
+opts may be NULL or a BSON document with additional command options:
+
+batchSize : An int32 representing number of documents requested to be returned on each call to mongoc_change_stream_next()
+resumeAfter : A Document representing the logical starting point of the change stream. The result of mongoc_change_stream_get_resume_token() or the _id field of any change received from a change stream can be used here. This option is mutually exclusive with startAfter and startAtOperationTime .
+startAfter : A Document representing the logical starting point of the change stream. Unlike resumeAfter , this can resume notifications after an “invalidate” event. The result of mongoc_change_stream_get_resume_token() or the _id field of any change received from a change stream can be used here. This option is mutually exclusive with resumeAfter and startAtOperationTime .
+startAtOperationTime : A Timestamp . The change stream only provides changes that occurred at or after the specified timestamp. Any command run against the server will return an operation time that can be used here. This option is mutually exclusive with resumeAfter and startAfter .
+maxAwaitTimeMS : An int64 representing the maximum amount of time a call to mongoc_change_stream_next() will block waiting for data
+fullDocument : An optional UTF-8 string. Set this option to “default”, “updateLookup”, “whenAvailable”, or “required”, If unset, The string “default” is assumed. Set this option to “updateLookup” to direct the change stream cursor to lookup the most current majority-committed version of the document associated to an update change stream event.
+fullDocumentBeforeChange : An optional UTF-8 string. Set this option to “whenAvailable”, “required”, or “off”. When unset, the default value is “off”. Similar to “fullDocument”, but returns the value of the document before the associated change.
+comment : A bson_value_t specifying the comment to attach to this command. The comment will appear in log messages, profiler output, and currentOp output. Only string values are supported prior to MongoDB 4.4.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_client_write_command_with_opts.html b/libmongoc/1.23.4/mongoc_client_write_command_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..ed23441576daf268294cc1b8fe73164a44effbf5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_client_write_command_with_opts.html
@@ -0,0 +1,402 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_client_write_command_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_client_write_command_with_opts()
+
+Synopsis
+bool
+mongoc_client_write_command_with_opts ( mongoc_client_t * client ,
+ const char * db_name ,
+ const bson_t * command ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+Execute a command on the server, applying logic that is specific to commands that write, and taking the MongoDB server version into account. To send a raw command to the server without any of this logic, use mongoc_client_command_simple() .
+Use this function for commands that write such as “drop” or “createRole” (but not for “insert”, “update”, or “delete”, see Basic Write Operations ). Write concern and collation can be overridden by various sources. In a transaction, read concern and write concern are prohibited in opts . The highest-priority sources for these options are listed first in the following table. The write concern is omitted for MongoDB before 3.4.
+
+
+Write Concern
+Collation
+
+
+
+opts
+opts
+
+Transaction
+
+
+client
+
+
+
+
+See the example for transactions and for the “distinct” command with opts .
+reply is always initialized, and must be freed with bson_destroy() .
+
+
+Parameters
+
+client : A mongoc_client_t .
+db_name : The name of the database to run the command on.
+command : A bson_t containing the command specification.
+opts : A bson_t containing additional options.
+reply : A location for the resulting document.
+error : An optional location for a bson_error_t or NULL .
+
+opts may be NULL or a BSON document with additional command options:
+
+Consult the MongoDB Manual entry on Database Commands for each command’s arguments.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+Basic Write Operations
+Do not use this function to call the basic write commands “insert”, “update”, and “delete”. Those commands require special logic not implemented in mongoc_client_write_command_with_opts . For basic write operations use CRUD functions such as mongoc_collection_insert_one() and the others described in the CRUD tutorial , or use the Bulk API .
+
+
+Example
+
+
example-command-with-opts.c
+
/*
+
+Demonstrates how to prepare options for mongoc_client_read_command_with_opts and
+mongoc_client_write_command_with_opts. First it calls "cloneCollectionAsCapped"
+command with "writeConcern" option, then "distinct" command with "collation" and
+"readConcern" options,
+
+Start a MongoDB 3.4 replica set with --enableMajorityReadConcern and insert two
+documents:
+
+$ mongo
+MongoDB Enterprise replset:PRIMARY> db.my_collection.insert({x: 1, y: "One"})
+WriteResult({ "nInserted" : 1 })
+MongoDB Enterprise replset:PRIMARY> db.my_collection.insert({x: 2, y: "Two"})
+WriteResult({ "nInserted" : 1 })
+
+Build and run the example:
+
+gcc example-command-with-opts.c -o example-command-with-opts $(pkg-config
+--cflags --libs libmongoc-1.0)
+./example-command-with-opts [CONNECTION_STRING]
+cloneCollectionAsCapped: { "ok" : 1 }
+distinct: { "values" : [ 1, 2 ], "ok" : 1 }
+
+*/
+
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_client_t * client ;
+ const char * uri_string = "mongodb://127.0.0.1/?appname=client-example" ;
+ mongoc_uri_t * uri ;
+ bson_t * cmd ;
+ bson_t * opts ;
+ mongoc_write_concern_t * write_concern ;
+ mongoc_read_prefs_t * read_prefs ;
+ mongoc_read_concern_t * read_concern ;
+ bson_t reply ;
+ bson_error_t error ;
+ char * json ;
+
+ mongoc_init ();
+
+ if ( argc > 1 ) {
+ uri_string = argv [ 1 ];
+ }
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+
+ cmd = BCON_NEW ( "cloneCollectionAsCapped" ,
+ BCON_UTF8 ( "my_collection" ),
+ "toCollection" ,
+ BCON_UTF8 ( "my_capped_collection" ),
+ "size" ,
+ BCON_INT64 ( 1024 * 1024 ));
+
+ /* include write concern "majority" in command options */
+ write_concern = mongoc_write_concern_new ();
+ mongoc_write_concern_set_wmajority ( write_concern , 10000 /* wtimeoutMS */ );
+ opts = bson_new ();
+ mongoc_write_concern_append ( write_concern , opts );
+
+ if ( mongoc_client_write_command_with_opts (
+ client , "test" , cmd , opts , & reply , & error )) {
+ json = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "cloneCollectionAsCapped: %s \n " , json );
+ bson_free ( json );
+ } else {
+ fprintf ( stderr , "cloneCollectionAsCapped: %s \n " , error . message );
+ }
+
+ bson_free ( cmd );
+ bson_free ( opts );
+
+ /* distinct values of "x" in "my_collection" where "y" sorts after "one" */
+ cmd = BCON_NEW ( "distinct" ,
+ BCON_UTF8 ( "my_collection" ),
+ "key" ,
+ BCON_UTF8 ( "x" ),
+ "query" ,
+ "{" ,
+ "y" ,
+ "{" ,
+ "$gt" ,
+ BCON_UTF8 ( "one" ),
+ "}" ,
+ "}" );
+
+ read_prefs = mongoc_read_prefs_new ( MONGOC_READ_SECONDARY );
+
+ /* "One" normally sorts before "one"; make "One" sort after "one" */
+ opts = BCON_NEW ( "collation" ,
+ "{" ,
+ "locale" ,
+ BCON_UTF8 ( "en_US" ),
+ "caseFirst" ,
+ BCON_UTF8 ( "lower" ),
+ "}" );
+
+ /* add a read concern to "opts" */
+ read_concern = mongoc_read_concern_new ();
+ mongoc_read_concern_set_level ( read_concern ,
+ MONGOC_READ_CONCERN_LEVEL_MAJORITY );
+
+ mongoc_read_concern_append ( read_concern , opts );
+
+ if ( mongoc_client_read_command_with_opts (
+ client , "test" , cmd , read_prefs , opts , & reply , & error )) {
+ json = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "distinct: %s \n " , json );
+ bson_free ( json );
+ } else {
+ fprintf ( stderr , "distinct: %s \n " , error . message );
+ }
+
+ bson_destroy ( cmd );
+ bson_destroy ( opts );
+ bson_destroy ( & reply );
+ mongoc_read_prefs_destroy ( read_prefs );
+ mongoc_read_concern_destroy ( read_concern );
+ mongoc_write_concern_destroy ( write_concern );
+ mongoc_uri_destroy ( uri );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_aggregate.html b/libmongoc/1.23.4/mongoc_collection_aggregate.html
new file mode 100644
index 0000000000000000000000000000000000000000..1c7819e80dfd5f740ee3dcee1a8b3d0954e2347e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_aggregate.html
@@ -0,0 +1,316 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_aggregate() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_aggregate()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_collection_aggregate ( mongoc_collection_t * collection ,
+ mongoc_query_flags_t flags ,
+ const bson_t * pipeline ,
+ const bson_t * opts ,
+ const mongoc_read_prefs_t * read_prefs )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+flags : A mongoc_query_flags_t . Not all flag values apply. In particular, setting MONGOC_QUERY_EXHAUST results in an error.
+pipeline : A bson_t , either a BSON array or a BSON document containing an array field named “pipeline”.
+opts : A bson_t containing options for the command, or NULL .
+read_prefs : A mongoc_read_prefs_t or NULL .
+
+opts may be NULL or a BSON document with additional command options:
+
+readConcern : Construct a mongoc_read_concern_t and use mongoc_read_concern_append() to add the read concern to opts . See the example code for mongoc_client_read_command_with_opts() . Read concern requires MongoDB 3.2 or later, otherwise an error is returned.
+writeConcern : Construct a mongoc_write_concern_t and use mongoc_write_concern_append() to add the write concern to opts . See the example code for mongoc_client_write_command_with_opts() .
+sessionId : First, construct a mongoc_client_session_t with mongoc_client_start_session() . You can begin a transaction with mongoc_client_session_start_transaction() , optionally with a mongoc_transaction_opt_t that overrides the options inherited from collection , and use mongoc_client_session_append() to add the session to opts . See the example code for mongoc_client_session_t .
+bypassDocumentValidation : Set to true to skip server-side schema validation of the provided BSON documents.
+collation : Configure textual comparisons. See Setting Collation Order , and the MongoDB Manual entry on Collation . Collation requires MongoDB 3.2 or later, otherwise an error is returned.
+serverId : To target a specific server, include an int32 “serverId” field. Obtain the id by calling mongoc_client_select_server() , then mongoc_server_description_id() on its return value.
+batchSize : An int32 representing number of documents requested to be returned on each call to mongoc_cursor_next()
+let : A BSON document consisting of any number of parameter names, each followed by definitions of constants in the MQL Aggregate Expression language.
+comment : A bson_value_t specifying the comment to attach to this command. The comment will appear in log messages, profiler output, and currentOp output. Only string values are supported prior to MongoDB 4.4.
+
+For a list of all options, see the MongoDB Manual entry on the aggregate command .
+This function is considered a retryable read operation unless the pipeline contains a write stage like $out or $merge.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+Description
+This function creates a cursor which sends the aggregate command on the underlying collection upon the first call to mongoc_cursor_next() . For more information on building aggregation pipelines, see the MongoDB Manual entry on the aggregate command .
+Read preferences, read and write concern, and collation can be overridden by various sources. The highest-priority sources for these options are listed first in the following table. In a transaction, read concern and write concern are prohibited in opts and the read preference must be primary or NULL. Write concern is applied from opts , or if opts has no write concern and the aggregation pipeline includes “$out”, the write concern is applied from collection . The write concern is omitted for MongoDB before 3.4.
+
+
+Read Preferences
+Read Concern
+Write Concern
+Collation
+
+
+
+read_prefs
+opts
+opts
+opts
+
+Transaction
+Transaction
+Transaction
+
+
+collection
+collection
+collection
+
+
+
+
+See the example for transactions and for the “distinct” command with opts .
+
+
+
+Example
+#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+
+static mongoc_cursor_t *
+pipeline_query ( mongoc_collection_t * collection )
+{
+ mongoc_cursor_t * cursor ;
+ bson_t * pipeline ;
+
+ pipeline = BCON_NEW ( "pipeline" ,
+ "[" ,
+ "{" ,
+ "$match" ,
+ "{" ,
+ "foo" ,
+ BCON_UTF8 ( "A" ),
+ "}" ,
+ "}" ,
+ "{" ,
+ "$match" ,
+ "{" ,
+ "bar" ,
+ BCON_BOOL ( false ),
+ "}" ,
+ "}" ,
+ "]" );
+
+ cursor = mongoc_collection_aggregate (
+ collection , MONGOC_QUERY_NONE , pipeline , NULL , NULL );
+
+ bson_destroy ( pipeline );
+
+ return cursor ;
+}
+
+
+
+
+Other Parameters
+When using $out , the pipeline stage that writes, the write_concern field of the mongoc_cursor_t will be set to the mongoc_write_concern_t parameter, if it is valid, and applied to the write command when mongoc_cursor_next() is called. Pass any other parameters to the aggregate command, besides pipeline , as fields in opts :
+mongoc_write_concern_t * write_concern = mongoc_write_concern_new ();
+mongoc_write_concern_set_w ( write_concern , 3 );
+
+pipeline =
+ BCON_NEW ( "pipeline" , "[" , "{" , "$out" , BCON_UTF8 ( "collection2" ), "}" , "]" );
+
+opts = BCON_NEW ( "bypassDocumentValidation" , BCON_BOOL ( true ));
+mongoc_write_concern_append ( write_concern , opts );
+
+cursor = mongoc_collection_aggregate (
+ collection1 , MONGOC_QUERY_NONE , pipeline , opts , NULL );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_command.html b/libmongoc/1.23.4/mongoc_collection_command.html
new file mode 100644
index 0000000000000000000000000000000000000000..f3dcb3710f230f43ad24229df004cfa6aeaf7a7a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_command.html
@@ -0,0 +1,220 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_command() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_command()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_collection_command ( mongoc_collection_t * collection ,
+ mongoc_query_flags_t flags ,
+ uint32_t skip ,
+ uint32_t limit ,
+ uint32_t batch_size ,
+ const bson_t * command ,
+ const bson_t * fields ,
+ const mongoc_read_prefs_t * read_prefs )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+This function is superseded by mongoc_collection_command_with_opts() , mongoc_collection_read_command_with_opts() , mongoc_collection_write_command_with_opts() , and mongoc_collection_read_write_command_with_opts() .
+This function is not considered a retryable read operation.
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+flags : A mongoc_query_flags_t .
+skip : A uint32_t with the number of documents to skip or zero.
+limit : A uint32_t with the max number of documents to return or zero.
+batch_size : A uint32_t with the number of documents in each batch or zero. Default is 100.
+command : A bson_t containing the command to execute.
+fields : A bson_t containing the fields to return or NULL . Not all commands support this option.
+read_prefs : An optional mongoc_read_prefs_t . Otherwise, the command uses mode MONGOC_READ_PRIMARY .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_command_simple.html b/libmongoc/1.23.4/mongoc_collection_command_simple.html
new file mode 100644
index 0000000000000000000000000000000000000000..d09e7a91c531502208dbe03157c8abbaf35c257e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_command_simple.html
@@ -0,0 +1,250 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_command_simple() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_command_simple()
+
+Synopsis
+bool
+mongoc_collection_command_simple ( mongoc_collection_t * collection ,
+ const bson_t * command ,
+ const mongoc_read_prefs_t * read_prefs ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+command : A bson_t containing the command to execute.
+read_prefs : An optional mongoc_read_prefs_t . Otherwise, the command uses mode MONGOC_READ_PRIMARY .
+reply : A location to initialize a bson_t . This should be on the stack.
+error : An optional location for a bson_error_t or NULL .
+
+
+
+Description
+This is a simplified version of mongoc_collection_command() that returns the first result document in reply . The collection’s read preference, read concern, and write concern are not applied to the command. The parameter reply is initialized even upon failure to simplify memory management.
+This function tries to unwrap an embedded error in the command when possible. The unwrapped error will be propagated via the error parameter. Additionally, the result document is set in reply .
+This function is not considered a retryable read operation.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+This function does not check the server response for a write concern error or write concern timeout.
+
+
+Example
+The following is an example of executing the collection stats command.
+#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+print_collection_stats ( mongoc_collection_t * collection )
+{
+ bson_error_t error ;
+ const char * name ;
+ bson_t * cmd ;
+ bson_t reply ;
+
+ name = mongoc_collection_get_name ( collection );
+ cmd = BCON_NEW ( "collStats" , BCON_UTF8 ( name ));
+
+ if ( mongoc_collection_command_simple (
+ collection , cmd , NULL , & reply , & error )) {
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ } else {
+ fprintf ( stderr , "%s \n " , error . message );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( cmd );
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_command_with_opts.html b/libmongoc/1.23.4/mongoc_collection_command_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..8b812b10891e1799dbd998ff0318f402be6c3ee5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_command_with_opts.html
@@ -0,0 +1,254 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_command_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_command_with_opts()
+
+Synopsis
+bool
+mongoc_collection_command_with_opts (
+ mongoc_collection_t * collection ,
+ const bson_t * command ,
+ const mongoc_read_prefs_t * read_prefs ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+Execute a command on the server, interpreting opts according to the MongoDB server version. To send a raw command to the server without any of this logic, use mongoc_client_command_simple() .
+Read preferences, read and write concern, and collation can be overridden by various sources. The highest-priority sources for these options are listed first:
+
+
+Read Preferences
+Read Concern
+Write Concern
+Collation
+
+
+
+read_prefs
+opts
+opts
+opts
+
+Transaction
+Transaction
+Transaction
+
+
+
+
+In a transaction, read concern and write concern are prohibited in opts and the read preference must be primary or NULL.
+See the example for transactions and for the “distinct” command with opts .
+reply is always initialized, and must be freed with bson_destroy() .
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+Consult the MongoDB Manual entry on Database Commands for each command’s arguments.
+This function is not considered a retryable read operation.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+The reply is not parsed for a write concern timeout or write concern error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_copy.html b/libmongoc/1.23.4/mongoc_collection_copy.html
new file mode 100644
index 0000000000000000000000000000000000000000..2d79e82379de6e919454a4688a870b434fe89542
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_copy.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_copy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_copy()
+
+Synopsis
+mongoc_collection_t *
+mongoc_collection_copy ( mongoc_collection_t * collection )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_count.html b/libmongoc/1.23.4/mongoc_collection_count.html
new file mode 100644
index 0000000000000000000000000000000000000000..2966b67b9e0391211e41f40cfa9dfb8cbcae432e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_count.html
@@ -0,0 +1,256 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_count() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_count()
+
+
+Synopsis
+int64_t
+mongoc_collection_count ( mongoc_collection_t * collection ,
+ mongoc_query_flags_t flags ,
+ const bson_t * query ,
+ int64_t skip ,
+ int64_t limit ,
+ const mongoc_read_prefs_t * read_prefs ,
+ bson_error_t * error )
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_collection_count_documents or
+ mongoc_collection_estimated_document_count );
+
+
+
+
+
+Description
+This function shall execute a count query on the underlying ‘collection’. The bson ‘query’ is not validated, simply passed along as appropriate to the server. As such, compatibility and errors should be validated in the appropriate server documentation.
+For more information, see the query reference at the MongoDB website.
+The mongoc_read_concern_t specified on the mongoc_collection_t will be used, if any. If read_prefs is NULL, the collection’s read preferences are used.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+-1 on failure, otherwise the number of documents counted.
+
+
+Example
+#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+print_query_count ( mongoc_collection_t * collection , bson_t * query )
+{
+ bson_error_t error ;
+ int64_t count ;
+
+ count = mongoc_collection_count (
+ collection , MONGOC_QUERY_NONE , query , 0 , 0 , NULL , & error );
+
+ if ( count < 0 ) {
+ fprintf ( stderr , "Count failed: %s \n " , error . message );
+ } else {
+ printf ( "%" PRId64 " documents counted. \n " , count );
+ }
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_count_documents.html b/libmongoc/1.23.4/mongoc_collection_count_documents.html
new file mode 100644
index 0000000000000000000000000000000000000000..0c79923f2ae9b84492abb70b4cac9374129992a2
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_count_documents.html
@@ -0,0 +1,286 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_count_documents() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_count_documents()
+
+Synopsis
+int64_t
+mongoc_collection_count_documents ( mongoc_collection_t * collection ,
+ const bson_t * filter ,
+ const bson_t * opts ,
+ const mongoc_read_prefs_t * read_prefs ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+filter : A bson_t containing the filter.
+opts : A bson_t , NULL to ignore.
+read_prefs : A mongoc_read_prefs_t or NULL .
+reply : A location for an uninitialized bson_t to store the command reply, NULL to ignore. If not NULL , reply will be initialized.
+error : An optional location for a bson_error_t or NULL .
+
+opts may be NULL or a BSON document with additional command options:
+
+
+skip : An int specifying how many documents matching the query should be skipped before counting.
+limit : An int specifying the maximum number of documents to count.
+comment : A bson_value_t specifying the comment to attach to this command. The comment will appear in log messages, profiler output, and currentOp output. Specifying a non-string value requires MongoDB 4.4 or later.
+
+
+
+Description
+This functions executes a count query on collection . In contrast with mongoc_collection_estimated_document_count() , the count returned is guaranteed to be accurate.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+-1 on failure, otherwise the number of documents counted.
+
+
+Example
+#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+print_count ( mongoc_collection_t * collection , bson_t * filter )
+{
+ bson_error_t error ;
+ int64_t count ;
+ bson_t * opts = BCON_NEW ( "skip" , BCON_INT64 ( 5 ));
+
+ count = mongoc_collection_count_documents (
+ collection , filter , opts , NULL , NULL , & error );
+ bson_destroy ( opts );
+
+ if ( count < 0 ) {
+ fprintf ( stderr , "Count failed: %s \n " , error . message );
+ } else {
+ printf ( "%" PRId64 " documents counted. \n " , count );
+ }
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_count_with_opts.html b/libmongoc/1.23.4/mongoc_collection_count_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..6e85ab7ef81e4d4242d7a925267ebcaff7538cb7
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_count_with_opts.html
@@ -0,0 +1,315 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_count_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_count_with_opts()
+
+
+Synopsis
+int64_t
+mongoc_collection_count_with_opts ( mongoc_collection_t * collection ,
+ mongoc_query_flags_t flags ,
+ const bson_t * query ,
+ int64_t skip ,
+ int64_t limit ,
+ const bson_t * opts ,
+ const mongoc_read_prefs_t * read_prefs ,
+ bson_error_t * error )
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_collection_count_documents or
+ mongoc_collection_estimated_document_count );
+
+
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+Description
+This function shall execute a count query on the underlying ‘collection’. The bson ‘query’ is not validated, simply passed along as appropriate to the server. As such, compatibility and errors should be validated in the appropriate server documentation.
+The mongoc_read_concern_t specified on the mongoc_collection_t will be used, if any. If read_prefs is NULL, the collection’s read preferences are used.
+In addition to the standard functionality available from mongoc_collection_count, this function allows the user to add arbitrary extra keys to the count. This pass through enables features such as hinting for counts.
+For more information, see the query reference at the MongoDB website.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+-1 on failure, otherwise the number of documents counted.
+
+
+Examples
+
+
Basic Counting
+
#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+print_query_count ( mongoc_collection_t * collection , bson_t * query )
+{
+ bson_error_t error ;
+ int64_t count ;
+ bson_t opts ;
+
+ bson_init ( & opts );
+ BSON_APPEND_UTF8 ( & opts , "hint" , "_id_" );
+
+ count = mongoc_collection_count_with_opts (
+ collection , MONGOC_QUERY_NONE , query , 0 , 0 , & opts , NULL , & error );
+
+ bson_destroy ( & opts );
+
+ if ( count < 0 ) {
+ fprintf ( stderr , "Count failed: %s \n " , error . message );
+ } else {
+ printf ( "%" PRId64 " documents counted. \n " , count );
+ }
+}
+
+
+
+
+
Counting with Collation
+
#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+print_query_count ( mongoc_collection_t * collection , bson_t * query )
+{
+ bson_t * selector ;
+ bson_t * opts ;
+ bson_error_t error ;
+ int64_t count ;
+
+ selector = BCON_NEW ( "_id" , "{" , "$gt" , BCON_UTF8 ( "one" ), "}" );
+
+ /* "One" normally sorts before "one"; make "one" come first */
+ opts = BCON_NEW ( "collation" ,
+ "{" ,
+ "locale" ,
+ BCON_UTF8 ( "en_US" ),
+ "caseFirst" ,
+ BCON_UTF8 ( "lower" ),
+ "}" );
+
+ count = mongoc_collection_count_with_opts (
+ collection , MONGOC_QUERY_NONE , query , 0 , 0 , opts , NULL , & error );
+
+ bson_destroy ( selector );
+ bson_destroy ( opts );
+
+ if ( count < 0 ) {
+ fprintf ( stderr , "Count failed: %s \n " , error . message );
+ } else {
+ printf ( "%" PRId64 " documents counted. \n " , count );
+ }
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_create_bulk_operation.html b/libmongoc/1.23.4/mongoc_collection_create_bulk_operation.html
new file mode 100644
index 0000000000000000000000000000000000000000..689e6519c55bd410f461fbbd33cbfd1b70d86310
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_create_bulk_operation.html
@@ -0,0 +1,232 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_create_bulk_operation() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_create_bulk_operation()
+
+Synopsis
+mongoc_bulk_operation_t *
+mongoc_collection_create_bulk_operation (
+ mongoc_collection_t * collection ,
+ bool ordered ,
+ const mongoc_write_concern_t * write_concern ) BSON_GNUC_WARN_UNUSED_RESULT
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_collection_create_bulk_operation_with_opts );
+
+
+
+
+
+
+Description
+This function shall begin a new bulk operation. After creating this you may call various functions such as mongoc_bulk_operation_update() , mongoc_bulk_operation_insert() and others.
+After calling mongoc_bulk_operation_execute() the commands will be executed in as large as batches as reasonable by the client.
+If ordered is true, then processing will stop at the first error.
+If ordered is not true, then the bulk operation will attempt to continue processing even after the first failure.
+write_concern contains the write concern for all operations in the bulk operation. If NULL , the collection’s write concern is used. The global default is acknowledged writes: MONGOC_WRITE_CONCERN_W_DEFAULT.
+
+
+Errors
+Errors are propagated when executing the bulk operation.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_create_bulk_operation_with_opts.html b/libmongoc/1.23.4/mongoc_collection_create_bulk_operation_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..3b813bfebd9c62bea9c46443ecf1fb35c2622413
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_create_bulk_operation_with_opts.html
@@ -0,0 +1,230 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_create_bulk_operation_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_create_bulk_operation_with_opts()
+
+Synopsis
+mongoc_bulk_operation_t *
+mongoc_collection_create_bulk_operation_with_opts (
+ mongoc_collection_t * collection ,
+ const bson_t * opts ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+
+Errors
+Errors are propagated when executing the bulk operation.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_create_index.html b/libmongoc/1.23.4/mongoc_collection_create_index.html
new file mode 100644
index 0000000000000000000000000000000000000000..143cdee4aebedce08f3a41161d3b8376da369f29
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_create_index.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_create_index() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_create_index()
+
+Synopsis
+bool
+mongoc_collection_create_index ( mongoc_collection_t * collection ,
+ const bson_t * keys ,
+ const mongoc_index_opt_t * opt ,
+ bson_error_t * error );
+
+
+
+
+Deprecated
+This function is deprecated and should not be used in new code. See Creating Indexes .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_create_index_with_opts.html b/libmongoc/1.23.4/mongoc_collection_create_index_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..4d7ad14eea08b70011817db1c9edcfdc1e10c49d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_create_index_with_opts.html
@@ -0,0 +1,229 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_create_index_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_create_index_with_opts()
+
+Synopsis
+bool
+mongoc_collection_create_index_with_opts ( mongoc_collection_t * collection ,
+ const bson_t * keys ,
+ const mongoc_index_opt_t * index_opts ,
+ const bson_t * command_opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+
+
+Deprecated
+This function is deprecated and should not be used in new code. See Creating Indexes .
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+keys : A bson_t .
+index_opts : A mongoc_index_opt_t.
+reply : An optional location for a bson_t which will store the server’s reply.
+error : An optional location for a bson_error_t or NULL .
+
+command_opts may be NULL or a BSON document with additional command options:
+
+
+
+Description
+This function will request the creation of a new index.
+This function will use the createIndexes command.
+The server’s reply is stored in reply .
+If no write concern is provided in command_opts , the collection’s write concern is used.
+See mongoc_index_opt_t for options on creating indexes.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+reply is always initialized and must be destroyed with bson_destroy() . If the server is running an obsolete version of MongoDB then reply may be empty, though it will still be initialized.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_delete.html b/libmongoc/1.23.4/mongoc_collection_delete.html
new file mode 100644
index 0000000000000000000000000000000000000000..6da356cea654b97cd8d27d9e7fa8b359a7ac3d7f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_delete.html
@@ -0,0 +1,222 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_delete() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_delete()
+
+Synopsis
+bool
+mongoc_collection_delete ( mongoc_collection_t * collection ,
+ mongoc_delete_flags_t flags ,
+ const bson_t * selector ,
+ const mongoc_write_concern_t * write_concern ,
+ bson_error_t * error )
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_collection_delete_one or
+ mongoc_collection_delete_many );
+
+
+
+
+
+
+Description
+This function shall delete documents in the given collection that match selector . The bson selector is not validated, simply passed along as appropriate to the server. As such, compatibility and errors should be validated in the appropriate server documentation.
+If you want to limit deletes to a single document, provide MONGOC_DELETE_SINGLE_REMOVE in flags .
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_delete_many.html b/libmongoc/1.23.4/mongoc_collection_delete_many.html
new file mode 100644
index 0000000000000000000000000000000000000000..0763f53d1dc460a866094235608078f9be7204db
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_delete_many.html
@@ -0,0 +1,225 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_delete_many() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_delete_many()
+
+Synopsis
+bool
+mongoc_collection_delete_many ( mongoc_collection_t * collection ,
+ const bson_t * selector ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+selector : A bson_t containing the query to match documents.
+reply : Optional. An uninitialized bson_t populated with the delete result, or NULL .
+error : An optional location for a bson_error_t or NULL .
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+Description
+This function removes all documents in the given collection that match selector .
+To delete at most one matching document, use mongoc_collection_delete_one() .
+If you pass a non-NULL reply , it is filled out with the field “deletedCount”. If there is a server error then reply contains either a “writeErrors” array with one subdocument or a “writeConcernErrors” array. The reply must be freed with bson_destroy() .
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_delete_one.html b/libmongoc/1.23.4/mongoc_collection_delete_one.html
new file mode 100644
index 0000000000000000000000000000000000000000..2fa5d488ecc39a941fcfc6df7b549eeee65dfed3
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_delete_one.html
@@ -0,0 +1,225 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_delete_one() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_delete_one()
+
+Synopsis
+bool
+mongoc_collection_delete_one ( mongoc_collection_t * collection ,
+ const bson_t * selector ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+selector : A bson_t containing the query to match documents.
+reply : Optional. An uninitialized bson_t populated with the delete result, or NULL .
+error : An optional location for a bson_error_t or NULL .
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+Description
+This function removes at most one document in the given collection that matches selector .
+To delete all matching documents, use mongoc_collection_delete_many() .
+If you pass a non-NULL reply , it is filled out with the field “deletedCount”. If there is a server error then reply contains either a “writeErrors” array with one subdocument or a “writeConcernErrors” array. The reply must be freed with bson_destroy() .
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_destroy.html b/libmongoc/1.23.4/mongoc_collection_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..296475961f957248b6f33e4e4e33e4d634b99bb7
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_destroy.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_destroy()
+
+Synopsis
+void
+mongoc_collection_destroy ( mongoc_collection_t * collection );
+
+
+
+
+
+Description
+This function shall destroy a mongoc_collection_t and its associated resources. Does nothing if collection is NULL.
+
+
Warning
+
Always destroy a mongoc_cursor_t created from a collection before destroying the collection.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_drop.html b/libmongoc/1.23.4/mongoc_collection_drop.html
new file mode 100644
index 0000000000000000000000000000000000000000..f0d5dbd2244c91780239a7c4bc62ababeae2cc91
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_drop.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_drop() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_drop()
+
+Synopsis
+bool
+mongoc_collection_drop ( mongoc_collection_t * collection , bson_error_t * error );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_drop_index.html b/libmongoc/1.23.4/mongoc_collection_drop_index.html
new file mode 100644
index 0000000000000000000000000000000000000000..7892a01022c3a905a53614a40790e059472eb511
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_drop_index.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_drop_index() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_drop_index()
+
+Synopsis
+bool
+mongoc_collection_drop_index ( mongoc_collection_t * collection ,
+ const char * index_name ,
+ bson_error_t * error );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_drop_index_with_opts.html b/libmongoc/1.23.4/mongoc_collection_drop_index_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..0c917edfc1afdfae24b30669e880404f776f552f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_drop_index_with_opts.html
@@ -0,0 +1,219 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_drop_index_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_drop_index_with_opts()
+
+Synopsis
+bool
+mongoc_collection_drop_index_with_opts ( mongoc_collection_t * collection ,
+ const char * index_name ,
+ const bson_t * opts ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+Description
+This function requests than an index on collection be dropped.
+If no write concern is provided in opts , the collection’s write concern is used.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_drop_with_opts.html b/libmongoc/1.23.4/mongoc_collection_drop_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..74333171e3090ebfeaf6466703f7317ce71339d0
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_drop_with_opts.html
@@ -0,0 +1,244 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_drop_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_drop_with_opts()
+
+Synopsis
+bool
+mongoc_collection_drop_with_opts ( mongoc_collection_t * collection ,
+ bson_t * opts ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+Description
+This function requests that a collection be dropped, including all indexes associated with the collection .
+If no write concern is provided in opts , the collection’s write concern is used.
+If the collection does not exist, the server responds with an “ns not found” error. It is safe to ignore this error; set the Error API Version to 2 and ignore server error code 26:
+mongoc_client_t * client ;
+mongoc_collection_t * collection ;
+bson_error_t error ;
+bool r ;
+
+client = mongoc_client_new ( NULL );
+mongoc_client_set_error_api ( client , 2 );
+collection = mongoc_client_get_collection ( client , "db" , "collection" );
+r = mongoc_collection_drop_with_opts ( collection , NULL /* opts */ , & error );
+if ( r ) {
+ printf ( "Dropped. \n " );
+} else {
+ printf ( "Error message: %s \n " , error . message );
+ if ( error . domain == MONGOC_ERROR_SERVER && error . code == 26 ) {
+ printf ( "Ignoring 'ns not found' error \n " );
+ } else {
+ fprintf ( stderr , "Unrecognized error! \n " );
+ }
+}
+
+mongoc_collection_destroy ( collection );
+mongoc_client_destroy ( client );
+
+
+In MongoDB 3.0 and older, the “ns not found” error code is the generic MONGOC_ERROR_QUERY_FAILURE; in this case check whether the error message is equal to the string “ns not found”.
+The encryptedFields document in opts may be used to create a collection used for Using Client-Side Field Level Encryption . If encryptedFields is specified, the “ns not found” error is not returned.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if the collection was successfully dropped. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_ensure_index.html b/libmongoc/1.23.4/mongoc_collection_ensure_index.html
new file mode 100644
index 0000000000000000000000000000000000000000..ce89dec3ea4ef21750fd861fc13c8d6cb858e9a4
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_ensure_index.html
@@ -0,0 +1,209 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_ensure_index() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_ensure_index()
+
+Synopsis
+bool
+mongoc_collection_ensure_index ( mongoc_collection_t * collection ,
+ const bson_t * keys ,
+ const mongoc_index_opt_t * opt ,
+ bson_error_t * error )
+ BSON_GNUC_DEPRECATED ;
+
+
+
+
+Deprecated
+This function is deprecated and should not be used in new code. See Creating Indexes .
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_estimated_document_count.html b/libmongoc/1.23.4/mongoc_collection_estimated_document_count.html
new file mode 100644
index 0000000000000000000000000000000000000000..3190c56f44658309ea1e5e0f230d185bebce9123
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_estimated_document_count.html
@@ -0,0 +1,267 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_estimated_document_count() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_estimated_document_count()
+
+Synopsis
+int64_t
+mongoc_collection_estimated_document_count ( mongoc_collection_t * collection ,
+ const bson_t * opts ,
+ const mongoc_read_prefs_t * read_prefs ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+
+skip : An int specifying how many documents matching the query should be skipped before counting.
+limit : An int specifying the maximum number of documents to count.
+comment : A bson_value_t specifying the comment to attach to this command. The comment will appear in log messages, profiler output, and currentOp output. Requires MongoDB 4.4 or later.
+
+For a list of all options, see the MongoDB Manual entry on the count command .
+
+
+Description
+This functions executes a count query on collection . In contrast with mongoc_collection_count_documents() , the count returned is not guaranteed to be accurate.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+Behavior
+This method is implemented using the count command. Due to an oversight in versions 5.0.0-5.0.8 of MongoDB, the count command was not included in version “1” of the Stable API. Applications using this method with the Stable API are recommended to upgrade their server version to 5.0.9+ or disable strict mode (via :symbol:`mongoc_server_api_strict() ) to avoid encountering errors.
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+-1 on failure, otherwise the number of documents counted.
+
+
+Example
+#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+print_count ( mongoc_collection_t * collection , bson_t * query )
+{
+ bson_error_t error ;
+ int64_t count ;
+ bson_t * opts = BCON_NEW ( "skip" , BCON_INT64 ( 5 ));
+
+ count = mongoc_collection_estimated_document_count (
+ collection , opts , NULL , NULL , & error );
+ bson_destroy ( opts );
+
+ if ( count < 0 ) {
+ fprintf ( stderr , "Count failed: %s \n " , error . message );
+ } else {
+ printf ( "%" PRId64 " documents counted. \n " , count );
+ }
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_find.html b/libmongoc/1.23.4/mongoc_collection_find.html
new file mode 100644
index 0000000000000000000000000000000000000000..fdd3a662839a63fd8d58633d69737873ff7efde6
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_find.html
@@ -0,0 +1,351 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_find() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_find()
+
+
+Synopsis
+mongoc_cursor_t *
+mongoc_collection_find ( mongoc_collection_t * collection ,
+ mongoc_query_flags_t flags ,
+ uint32_t skip ,
+ uint32_t limit ,
+ uint32_t batch_size ,
+ const bson_t * query ,
+ const bson_t * fields ,
+ const mongoc_read_prefs_t * read_prefs )
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_collection_find_with_opts )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+flags : A mongoc_query_flags_t .
+skip : A uint32_t of number of documents to skip or 0.
+limit : A uint32_t of max number of documents to return or 0.
+batch_size : A uint32_t containing batch size of document result sets or 0 for default. Default is 100.
+query : A bson_t containing the query and options to execute.
+fields : A bson_t containing fields to return or NULL .
+read_prefs : A mongoc_read_prefs_t or NULL for default read preferences.
+
+
+
+Description
+This function shall execute a query on the underlying collection .
+If no options are necessary, query can simply contain a query such as {a:1} . If you would like to specify options such as a sort order, the query must be placed inside of {"$query": {}} . See the example below for how to properly specify additional options to query .
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+
+Example
+
+
Print All Documents in a Collection
+
#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+print_all_documents ( mongoc_collection_t * collection )
+{
+ mongoc_cursor_t * cursor ;
+ bson_error_t error ;
+ const bson_t * doc ;
+ char * str ;
+ bson_t * query ;
+
+ query = BCON_NEW ( "$query" ,
+ "{" ,
+ "foo" ,
+ BCON_INT32 ( 1 ),
+ "}" ,
+ "$orderby" ,
+ "{" ,
+ "bar" ,
+ BCON_INT32 ( -1 ),
+ "}" );
+ cursor = mongoc_collection_find (
+ collection , MONGOC_QUERY_NONE , 0 , 0 , 0 , query , NULL , NULL );
+
+ while ( mongoc_cursor_next ( cursor , & doc )) {
+ str = bson_as_canonical_extended_json ( doc , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ }
+
+ if ( mongoc_cursor_error ( cursor , & error )) {
+ fprintf ( stderr , "An error occurred: %s \n " , error . message );
+ }
+
+ mongoc_cursor_destroy ( cursor );
+ bson_destroy ( query );
+}
+
+
+
+
+
+The “find” command
+Queries have historically been sent as OP_QUERY wire protocol messages, but beginning in MongoDB 3.2 queries use the “find” command instead.
+The driver automatically converts queries to the new “find” command syntax if needed, so this change is typically invisible to C Driver users. However, an application written exclusively for MongoDB 3.2 and later can choose to use the new syntax directly instead of relying on the driver to convert from the old syntax:
+/* MongoDB 3.2+ "find" command syntax */
+query = BCON_NEW ( "filter" ,
+ "{" ,
+ "foo" ,
+ BCON_INT32 ( 1 ),
+ "}" ,
+ "sort" ,
+ "{" ,
+ "bar" ,
+ BCON_INT32 ( -1 ),
+ "}" );
+cursor = mongoc_collection_find (
+ collection , MONGOC_QUERY_NONE , 0 , 0 , 0 , query , NULL , NULL );
+
+
+The “find” command takes different options from the traditional OP_QUERY message.
+
+
+Query
+$query
+filter
+
+Sort
+$orderby
+sort
+
+Show record location
+$showDiskLoc
+showRecordId
+
+Other $-options
+$<option name>
+<option name>
+
+
+
+Most applications should use the OP_QUERY syntax, with “$query”, “$orderby”, and so on, and rely on the driver to convert to the new syntax if needed.
+
+
+
+The “explain” command
+With MongoDB before 3.2, a query with option $explain: true returns information about the query plan, instead of the query results. Beginning in MongoDB 3.2, there is a separate “explain” command. The driver will not convert “$explain” queries to “explain” commands, you must call the “explain” command explicitly:
+/* MongoDB 3.2+, "explain" command syntax */
+command = BCON_NEW ( "explain" ,
+ "{" ,
+ "find" ,
+ BCON_UTF8 ( "collection_name" ),
+ "filter" ,
+ "{" ,
+ "foo" ,
+ BCON_INT32 ( 1 ),
+ "}" ,
+ "}" );
+mongoc_collection_command_simple ( collection , command , NULL , & reply , & error );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_find_and_modify.html b/libmongoc/1.23.4/mongoc_collection_find_and_modify.html
new file mode 100644
index 0000000000000000000000000000000000000000..05a7b593391721fb686cb32285b9d7e3eb659296
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_find_and_modify.html
@@ -0,0 +1,328 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_find_and_modify() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_find_and_modify()
+
+Synopsis
+bool
+mongoc_collection_find_and_modify ( mongoc_collection_t * collection ,
+ const bson_t * query ,
+ const bson_t * sort ,
+ const bson_t * update ,
+ const bson_t * fields ,
+ bool _remove ,
+ bool upsert ,
+ bool _new ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+query : A bson_t containing the query to locate target document(s).
+sort : A bson_t containing the sort order for query .
+update : A bson_t containing an update spec.
+fields : An optional bson_t containing the fields to return or NULL .
+_remove : If the matching documents should be removed.
+upsert : If an upsert should be performed.
+_new : If the new version of the document should be returned.
+reply : Optional pointer to an uninitialized bson_t that will be initialized with the result.
+error : An optional location for a bson_error_t or NULL .
+
+
+
+Description
+Update and return an object.
+This is a thin wrapper around the findAndModify command. Either update or _remove arguments are required.
+As of MongoDB 3.2, the mongoc_write_concern_t specified on the mongoc_collection_t will be used, if any.
+reply is always initialized, and must be freed with bson_destroy() .
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns either the document before or after modification based on the _new parameter.
+A write concern timeout or write concern error is considered a failure.
+
+
+
+Example
+
+
find-and-modify.c
+
#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+
+int
+main ( void )
+{
+ mongoc_collection_t * collection ;
+ mongoc_client_t * client ;
+ const char * uri_string =
+ "mongodb://127.0.0.1:27017/?appname=find-and-modify-example" ;
+ mongoc_uri_t * uri ;
+ bson_error_t error ;
+ bson_t * query ;
+ bson_t * update ;
+ bson_t reply ;
+ char * str ;
+
+ mongoc_init ();
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+ collection = mongoc_client_get_collection ( client , "test" , "test" );
+
+ /*
+ * Build our query, {"cmpxchg": 1}
+ */
+ query = BCON_NEW ( "cmpxchg" , BCON_INT32 ( 1 ));
+
+ /*
+ * Build our update. {"$set": {"cmpxchg": 2}}
+ */
+ update = BCON_NEW ( "$set" , "{" , "cmpxchg" , BCON_INT32 ( 2 ), "}" );
+
+ /*
+ * Submit the findAndModify.
+ */
+ if ( ! mongoc_collection_find_and_modify ( collection ,
+ query ,
+ NULL ,
+ update ,
+ NULL ,
+ false ,
+ false ,
+ true ,
+ & reply ,
+ & error )) {
+ fprintf ( stderr , "find_and_modify() failure: %s \n " , error . message );
+ return EXIT_FAILURE ;
+ }
+
+ /*
+ * Print the result as JSON.
+ */
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+
+ /*
+ * Cleanup.
+ */
+ bson_destroy ( query );
+ bson_destroy ( update );
+ bson_destroy ( & reply );
+ mongoc_collection_destroy ( collection );
+ mongoc_uri_destroy ( uri );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_find_and_modify_with_opts.html b/libmongoc/1.23.4/mongoc_collection_find_and_modify_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..553f1890fef98a5d3f0f6d141c47f1de470b35b2
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_find_and_modify_with_opts.html
@@ -0,0 +1,222 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_find_and_modify_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_find_and_modify_with_opts()
+
+Synopsis
+bool
+mongoc_collection_find_and_modify_with_opts (
+ mongoc_collection_t * collection ,
+ const bson_t * query ,
+ const mongoc_find_and_modify_opts_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+
+
+
+Description
+Update and return an object.
+reply is always initialized, and must be freed with bson_destroy() .
+If an unacknowledged write concern is set (through mongoc_find_and_modify_opts_append() ), the output reply is always an empty document.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_find_indexes.html b/libmongoc/1.23.4/mongoc_collection_find_indexes.html
new file mode 100644
index 0000000000000000000000000000000000000000..43a8331a1ceff7b9102a045ffc12d42efa41b4ff
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_find_indexes.html
@@ -0,0 +1,222 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_find_indexes() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_find_indexes()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_collection_find_indexes ( mongoc_collection_t * collection ,
+ bson_error_t * error );
+ BSON_GNUC_WARN_UNUSED_RESULT
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_collection_find_indexes_with_opts );
+
+
+
+
+Deprecated
+This function is deprecated and should not be used in new code.
+Please use mongoc_collection_find_indexes_with_opts() instead.
+Fetches a cursor containing documents, each corresponding to an index on this collection.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_find_indexes_with_opts.html b/libmongoc/1.23.4/mongoc_collection_find_indexes_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..3187ed2c61b71b109e343c2c5dc79de1714416fb
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_find_indexes_with_opts.html
@@ -0,0 +1,222 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_find_indexes_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_find_indexes_with_opts()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_collection_find_indexes_with_opts ( mongoc_collection_t * collection ,
+ const bson_t * opts )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Fetches a cursor containing documents, each corresponding to an index on this collection.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_find_with_opts.html b/libmongoc/1.23.4/mongoc_collection_find_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..e6145ea117a55d0a4a9c0583db1c5dba80ff9e7a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_find_with_opts.html
@@ -0,0 +1,427 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_find_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_find_with_opts()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_collection_find_with_opts ( mongoc_collection_t * collection ,
+ const bson_t * filter ,
+ const bson_t * opts ,
+ const mongoc_read_prefs_t * read_prefs )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+Query on collection , passing arbitrary query options to the server in opts .
+To target a specific server, include an integer “serverId” field in opts with an id obtained first by calling mongoc_client_select_server() , then mongoc_server_description_id() on its return value.
+Read preferences, read concern, and collation can be overridden by various sources. In a transaction, read concern and write concern are prohibited in opts and the read preference must be primary or NULL. The highest-priority sources for these options are listed first in the following table. No write concern is applied.
+
+
+Read Preferences
+Read Concern
+Collation
+
+
+
+read_prefs
+opts
+opts
+
+Transaction
+Transaction
+
+
+collection
+
+
+
+
+
+See the example for transactions and for the “distinct” command with opts .
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+
+Examples
+
+
Print First Ten Documents in a Collection
+
#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+static void
+print_ten_documents ( mongoc_collection_t * collection )
+{
+ bson_t * filter ;
+ bson_t * opts ;
+ mongoc_cursor_t * cursor ;
+ bson_error_t error ;
+ const bson_t * doc ;
+ char * str ;
+
+ /* filter by "foo": 1, order by "bar" descending */
+ filter = BCON_NEW ( "foo" , BCON_INT32 ( 1 ));
+ opts = BCON_NEW (
+ "limit" , BCON_INT64 ( 10 ), "sort" , "{" , "bar" , BCON_INT32 ( -1 ), "}" );
+
+ cursor = mongoc_collection_find_with_opts ( collection , filter , opts , NULL );
+
+ while ( mongoc_cursor_next ( cursor , & doc )) {
+ str = bson_as_canonical_extended_json ( doc , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ }
+
+ if ( mongoc_cursor_error ( cursor , & error )) {
+ fprintf ( stderr , "An error occurred: %s \n " , error . message );
+ }
+
+ mongoc_cursor_destroy ( cursor );
+ bson_destroy ( filter );
+ bson_destroy ( opts );
+}
+
+
+
+
+
More examples of modifying the query with opts :
+
bson_t * filter ;
+bson_t * opts ;
+mongoc_read_prefs_t * read_prefs ;
+
+filter = BCON_NEW ( "foo" , BCON_INT32 ( 1 ));
+
+/* Include "field_name_one" and "field_name_two" in "projection", omit
+ * others. "_id" must be specifically removed or it is included by default.
+ */
+opts = BCON_NEW ( "projection" , "{" ,
+ "field_name_one" , BCON_BOOL ( true ),
+ "field_name_two" , BCON_BOOL ( true ),
+ "_id" , BCON_BOOL ( false ),
+ "}" ,
+ "tailable" , BCON_BOOL ( true ),
+ "awaitData" , BCON_BOOL ( true ),
+ "sort" , "{" , "bar" , BCON_INT32 ( -1 ), "}" ,
+ "collation" , "{" ,
+ "locale" , BCON_UTF8 ( "en_US" ),
+ "caseFirst" , BCON_UTF8 ( "lower" ),
+ "}" );
+
+read_prefs = mongoc_read_prefs_new ( MONGOC_READ_SECONDARY );
+
+cursor =
+ mongoc_collection_find_with_opts ( collection , filter , opts , read_prefs );
+
+
+
+The following options are supported.
+
+
+Option
+BSON type
+Option
+BSON type
+
+
+
+projection
+document
+max
+document
+
+sort
+document
+maxTimeMS
+non-negative int64
+
+skip
+non-negative int64
+maxAwaitTimeMS
+non-negative int64
+
+limit
+non-negative int64
+min
+document
+
+batchSize
+non-negative int64
+noCursorTimeout
+bool
+
+exhaust
+bool
+oplogReplay
+bool
+
+hint
+string or document
+readConcern
+document
+
+allowPartialResults
+bool
+returnKey
+bool
+
+awaitData
+bool
+sessionId
+(none)
+
+collation
+document
+showRecordId
+bool
+
+comment
+any
+singleBatch
+bool
+
+allowDiskUse
+bool
+let
+document
+
+
+
+All options are documented in the reference page for the “find” command in the MongoDB server manual, except for “maxAwaitTimeMS”, “sessionId”, and “exhaust”.
+“maxAwaitTimeMS” is the maximum amount of time for the server to wait on new documents to satisfy a query, if “tailable” and “awaitData” are both true.
+If no new documents are found, the tailable cursor receives an empty batch. The “maxAwaitTimeMS” option is ignored for MongoDB older than 3.4.
+To add a “sessionId”, construct a mongoc_client_session_t with mongoc_client_start_session() . You can begin a transaction with mongoc_client_session_start_transaction() , optionally with a mongoc_transaction_opt_t that overrides the options inherited from collection . Then use mongoc_client_session_append() to add the session to opts . See the example code for mongoc_client_session_t .
+To add a “readConcern”, construct a mongoc_read_concern_t with mongoc_read_concern_new() and configure it with mongoc_read_concern_set_level() . Then use mongoc_read_concern_append() to add the read concern to opts .
+“exhaust” requests the construction of an exhaust cursor. For MongoDB servers before 5.1, this option converts the command into a legacy OP_QUERY message. For MongoDB servers 5.1 and newer, this option is ignored and a normal cursor is constructed instead.
+For some options like “collation”, the driver returns an error if the server version is too old to support the feature.
+Any fields in opts that are not listed here are passed to the server unmodified.
+allowDiskUse is only supported in MongoDB 4.4+.
+comment only supports string values prior to MongoDB 4.4.
+
+
+Deprecated Options
+The snapshot boolean option is removed in MongoDB 4.0. The maxScan option, a non-negative int64, is deprecated in MongoDB 4.0 and will be removed in a future MongoDB version. The oplogReplay boolean option is deprecated in MongoDB 4.4. All of these options are supported by the C Driver with older MongoDB versions.
+
+
See also
+
+
The “find” command in the MongoDB Manual. All options listed there are supported by the C Driver. For MongoDB servers before 3.2, the driver transparently converts the query to a legacy OP_QUERY message.
+
+
+
+
+The “explain” command
+With MongoDB before 3.2, a query with option $explain: true returns information about the query plan, instead of the query results. Beginning in MongoDB 3.2, there is a separate “explain” command. The driver will not convert “$explain” queries to “explain” commands, you must call the “explain” command explicitly:
+/* MongoDB 3.2+, "explain" command syntax */
+command = BCON_NEW ( "explain" , "{" ,
+ "find" , BCON_UTF8 ( "collection_name" ),
+ "filter" , "{" , "foo" , BCON_INT32 ( 1 ), "}" ,
+ "}" );
+
+mongoc_collection_command_simple ( collection , command , NULL , & reply , & error );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_get_last_error.html b/libmongoc/1.23.4/mongoc_collection_get_last_error.html
new file mode 100644
index 0000000000000000000000000000000000000000..2d682966ad5492e94911793d84fa0352d7b180fc
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_get_last_error.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_get_last_error() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_get_last_error()
+
+Synopsis
+const bson_t *
+mongoc_collection_get_last_error ( const mongoc_collection_t * collection );
+
+
+
+
+
+Description
+The mongoc_collection_get_last_error() function returns a bulk result. See Bulk Write Operations for examples of bulk results.
+A write_concern must be at least MONGOC_WRITE_CONCERN_W_DEFAULT in last command execution for this to be available.
+
+
+Returns
+A bson_t that should not be modified or NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_get_name.html b/libmongoc/1.23.4/mongoc_collection_get_name.html
new file mode 100644
index 0000000000000000000000000000000000000000..103da7662def9cce40d90a8e51e9bd98e3d42348
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_get_name.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_get_name() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_get_name()
+
+Synopsis
+const char *
+mongoc_collection_get_name ( mongoc_collection_t * collection );
+
+
+
+
+
+Description
+Fetches the name of collection .
+
+
+Returns
+A string which should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_get_read_concern.html b/libmongoc/1.23.4/mongoc_collection_get_read_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..ddcf6ee4f11ceb1af40c174636222e1e8d51ed51
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_get_read_concern.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_get_read_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_get_read_concern()
+
+Synopsis
+const mongoc_read_concern_t *
+mongoc_collection_get_read_concern ( const mongoc_collection_t * collection );
+
+
+
+
+
+Description
+Fetches the default read concern to be used on read operations originating from collection .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_get_read_prefs.html b/libmongoc/1.23.4/mongoc_collection_get_read_prefs.html
new file mode 100644
index 0000000000000000000000000000000000000000..4a92408d9042352cf67752c70924e4cbe2488960
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_get_read_prefs.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_get_read_prefs() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_get_read_prefs()
+
+Synopsis
+const mongoc_read_prefs_t *
+mongoc_collection_get_read_prefs ( const mongoc_collection_t * collection );
+
+
+
+
+
+Description
+Fetches the default read preferences to use for collection . Operations without specified read-preferences will default to this.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_get_write_concern.html b/libmongoc/1.23.4/mongoc_collection_get_write_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..8411e75e393f7a3dc09debd4c72e12b26c759f40
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_get_write_concern.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_get_write_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_get_write_concern()
+
+Synopsis
+const mongoc_write_concern_t *
+mongoc_collection_get_write_concern ( const mongoc_collection_t * collection );
+
+
+
+
+
+Description
+Fetches the default write concern to be used on write operations originating from collection and not specifying a write concern.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_insert.html b/libmongoc/1.23.4/mongoc_collection_insert.html
new file mode 100644
index 0000000000000000000000000000000000000000..30e4ac77f4facc4bde7ad4f4c0a4bed9ff0f33fe
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_insert.html
@@ -0,0 +1,217 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_insert() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_insert()
+
+Synopsis
+bool
+mongoc_collection_insert ( mongoc_collection_t * collection ,
+ mongoc_insert_flags_t flags ,
+ const bson_t * document ,
+ const mongoc_write_concern_t * write_concern ,
+ bson_error_t * error );
+
+
+
+
+
+Description
+Superseded by mongoc_collection_insert_one() and mongoc_collection_insert_many() .
+This function shall insert document into collection .
+If no _id element is found in document , then a bson_oid_t will be generated locally and added to the document. If you must know the inserted document’s _id , generate it in your code and include it in the document . The _id you generate can be a bson_oid_t or any other non-array BSON type.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_insert_bulk.html b/libmongoc/1.23.4/mongoc_collection_insert_bulk.html
new file mode 100644
index 0000000000000000000000000000000000000000..ba922706a4d9a30349d0bacbe9b1dc4b4e7f8007
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_insert_bulk.html
@@ -0,0 +1,223 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_insert_bulk() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_insert_bulk()
+
+Synopsis
+bool
+mongoc_collection_insert_bulk ( mongoc_collection_t * collection ,
+ mongoc_insert_flags_t flags ,
+ const bson_t ** documents ,
+ uint32_t n_documents ,
+ const mongoc_write_concern_t * write_concern ,
+ bson_error_t * error )
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_collection_insert_many );
+
+
+
+
+
+
+Description
+This function performs a bulk insert of all of the documents in documents . This function is deprecated as it cannot accurately return which documents may have failed during the bulk insert.
+
+
+Errors
+Errors are propagated via the error parameter.
+A write concern timeout or write concern error is considered a failure.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_insert_many.html b/libmongoc/1.23.4/mongoc_collection_insert_many.html
new file mode 100644
index 0000000000000000000000000000000000000000..47256f7b435c8cdaa22354f5e30095df148ea74d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_insert_many.html
@@ -0,0 +1,228 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_insert_many() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_insert_many()
+
+Synopsis
+bool
+mongoc_collection_insert_many ( mongoc_collection_t * collection ,
+ const bson_t ** documents ,
+ size_t n_documents ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+documents : An array of pointers to bson_t .
+n_documents : The length of documents .
+reply : Optional. An uninitialized bson_t populated with the insert result, or NULL .
+error : An optional location for a bson_error_t or NULL .
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+Description
+Insert documents into collection .
+To insert a single document, see mongoc_collection_insert_one() .
+For any document that does not have an “_id” field, a bson_oid_t will be generated locally and added to the document. If you must know the inserted document’s _id , generate it in your code and include it in the document . The _id you generate can be a bson_oid_t or any other non-array BSON type.
+If you pass a non-NULL reply , it is filled out with an “insertedCount” field. If there is a server error then reply may contain a “writeErrors” array and/or a “writeConcernErrors” array (see Bulk Write Operations for examples). The reply must be freed with bson_destroy() .
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_insert_one.html b/libmongoc/1.23.4/mongoc_collection_insert_one.html
new file mode 100644
index 0000000000000000000000000000000000000000..85fa979582284de852a57635484ad4637f41168b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_insert_one.html
@@ -0,0 +1,225 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_insert_one() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_insert_one()
+
+Synopsis
+bool
+mongoc_collection_insert_one ( mongoc_collection_t * collection ,
+ const bson_t * document ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+Description
+This function shall insert document into collection .
+To insert an array of documents, see mongoc_collection_insert_many() .
+If no _id element is found in document , then a bson_oid_t will be generated locally and added to the document. If you must know the inserted document’s _id , generate it in your code and include it in the document . The _id you generate can be a bson_oid_t or any other non-array BSON type.
+If you pass a non-NULL reply , it is filled out with an “insertedCount” field. If there is a server error then reply contains either a “writeErrors” array with one subdocument or a “writeConcernErrors” array. The reply must be freed with bson_destroy() .
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_keys_to_index_string.html b/libmongoc/1.23.4/mongoc_collection_keys_to_index_string.html
new file mode 100644
index 0000000000000000000000000000000000000000..7ddee87dce915bed22bac4778f52e648f34593e8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_keys_to_index_string.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_keys_to_index_string() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_keys_to_index_string()
+
+Synopsis
+char *
+mongoc_collection_keys_to_index_string ( const bson_t * keys )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+This function returns the canonical stringification of a given key specification. See Creating Indexes .
+It is a programming error to call this function on a non-standard index, such one other than a straight index with ascending and descending.
+
+
+Returns
+A string that should be freed with bson_free() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_read_command_with_opts.html b/libmongoc/1.23.4/mongoc_collection_read_command_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..c98df34f4e0e5cf066c807b496ff685a82426699
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_read_command_with_opts.html
@@ -0,0 +1,256 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_read_command_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_read_command_with_opts()
+
+Synopsis
+bool
+mongoc_collection_read_command_with_opts ( mongoc_collection_t * collection ,
+ const bson_t * command ,
+ const mongoc_read_prefs_t * read_prefs ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+Execute a command on the server, applying logic that is specific to commands that read, and taking the MongoDB server version into account. To send a raw command to the server without any of this logic, use mongoc_collection_command_simple() .
+Use this function for commands that read such as “count” or “distinct”.
+Read preferences, read concern, and collation can be overridden by various sources. In a transaction, read concern and write concern are prohibited in opts and the read preference must be primary or NULL. The highest-priority sources for these options are listed first in the following table. No write concern is applied.
+
+
+Read Preferences
+Read Concern
+Collation
+
+
+
+read_prefs
+opts
+opts
+
+Transaction
+Transaction
+
+
+collection
+
+
+
+
+
+See the example for transactions and for the “distinct” command with opts .
+reply is always initialized, and must be freed with bson_destroy() .
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+Retry logic occurs regardless of the underlying command. Retrying mapReduce has the potential for degraded performance.
+Retrying a getMore command has the potential to miss results. For those commands, use generic command helpers (like mongoc_collection_command_with_opts() ) instead.
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_read_write_command_with_opts.html b/libmongoc/1.23.4/mongoc_collection_read_write_command_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..10f43128eb645f19b6cca8c950a72d904f686c5a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_read_write_command_with_opts.html
@@ -0,0 +1,255 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_read_write_command_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_read_write_command_with_opts()
+
+Synopsis
+bool
+mongoc_collection_read_write_command_with_opts (
+ mongoc_collection_t * collection ,
+ const bson_t * command ,
+ const mongoc_read_prefs_t * read_prefs /* UNUSED */ ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+Execute a command on the server, applying logic for commands that both read and write, and taking the MongoDB server version into account. To send a raw command to the server without any of this logic, use mongoc_collection_command_simple() .
+Use this function for commands that both read and write, such as “mapReduce” with an output collection.
+Read and write concern and collation can be overridden by various sources. In a transaction, read concern and write concern are prohibited in opts . The highest-priority sources for these options are listed first in the following table. Read preferences are not applied. The write concern is omitted for MongoDB before 3.4.
+
+
+Read Concern
+Write Concern
+Collation
+
+
+
+opts
+opts
+opts
+
+Transaction
+Transaction
+
+
+collection
+collection
+
+
+
+
+See the example for transactions and for the “distinct” command with opts .
+reply is always initialized, and must be freed with bson_destroy() .
+(The mongoc_read_prefs_t parameter was included by mistake when this function was introduced in libmongoc 1.5. A command that writes must not obey a read preference.)
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+command : A bson_t containing the command specification.
+read_prefs : Ignored.
+opts : A bson_t containing additional options.
+reply : A location for the resulting document.
+error : An optional location for a bson_error_t or NULL .
+
+opts may be NULL or a BSON document with additional command options:
+
+Consult the MongoDB Manual entry on Database Commands for each command’s arguments.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_remove.html b/libmongoc/1.23.4/mongoc_collection_remove.html
new file mode 100644
index 0000000000000000000000000000000000000000..7db243fea2ca852384e80b3dcdde0457366fba65
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_remove.html
@@ -0,0 +1,216 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_remove() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_remove()
+
+Synopsis
+bool
+mongoc_collection_remove ( mongoc_collection_t * collection ,
+ mongoc_remove_flags_t flags ,
+ const bson_t * selector ,
+ const mongoc_write_concern_t * write_concern ,
+ bson_error_t * error );
+
+
+
+
+
+Description
+Superseded by mongoc_collection_delete_one() and mongoc_collection_delete_many() .
+This function shall remove documents in the given collection that match selector . The bson selector is not validated, simply passed along as appropriate to the server. As such, compatibility and errors should be validated in the appropriate server documentation.
+If you want to limit deletes to a single document, provide MONGOC_REMOVE_SINGLE_REMOVE in flags .
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_rename.html b/libmongoc/1.23.4/mongoc_collection_rename.html
new file mode 100644
index 0000000000000000000000000000000000000000..a2da58e0e019a9d6385b0ddae2414a1ad10c8987
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_rename.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_rename() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_rename()
+
+Synopsis
+bool
+mongoc_collection_rename ( mongoc_collection_t * collection ,
+ const char * new_db ,
+ const char * new_name ,
+ bool drop_target_before_rename ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+new_db : The name of the new database.
+new_name : The new name for the collection.
+drop_target_before_rename : If an existing collection matches the new name, drop it before the rename.
+error : An optional location for a bson_error_t or NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_rename_with_opts.html b/libmongoc/1.23.4/mongoc_collection_rename_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..fe71afd569b3309572db0a91b2a88ec7488a277d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_rename_with_opts.html
@@ -0,0 +1,222 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_rename_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_rename_with_opts()
+
+Synopsis
+bool
+mongoc_collection_rename_with_opts ( mongoc_collection_t * collection ,
+ const char * new_db ,
+ const char * new_name ,
+ bool drop_target_before_rename ,
+ const bson_t * opts ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+new_db : The name of the new database.
+new_name : The new name for the collection.
+drop_target_before_rename : If an existing collection matches the new name, drop it before the rename.
+error : An optional location for a bson_error_t or NULL .
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+Description
+This function is a helper to rename an existing collection on a MongoDB server. The name of the collection will also be updated internally so it is safe to continue using this collection after the rename. Additional operations will occur on renamed collection.
+If no write concern is provided in opts , the collection’s write concern is used.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_replace_one.html b/libmongoc/1.23.4/mongoc_collection_replace_one.html
new file mode 100644
index 0000000000000000000000000000000000000000..ea8d683298bff00ae49ad79c1ff72c7f03ad548f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_replace_one.html
@@ -0,0 +1,241 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_replace_one() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_replace_one()
+
+Synopsis
+bool
+mongoc_collection_replace_one ( mongoc_collection_t * collection ,
+ const bson_t * selector ,
+ const bson_t * replacement ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+selector : A bson_t containing the query to match the document for updating.
+replacement : A bson_t containing the replacement document.
+reply : Optional. An uninitialized bson_t populated with the update result, or NULL .
+error : An optional location for a bson_error_t or NULL .
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+Description
+This function shall replace documents in collection that match selector with replacement .
+If provided, reply will be initialized and populated with the fields matchedCount , modifiedCount , upsertedCount , and optionally upsertedId if applicable. If there is a server error then reply contains either a writeErrors array with one subdocument or a writeConcernErrors array. The reply must be freed with bson_destroy() .
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_save.html b/libmongoc/1.23.4/mongoc_collection_save.html
new file mode 100644
index 0000000000000000000000000000000000000000..cb9b7fa659940873cc413340ea67853bbbe4797e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_save.html
@@ -0,0 +1,221 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_save() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_save()
+
+
+Synopsis
+bool
+mongoc_collection_save ( mongoc_collection_t * collection ,
+ const bson_t * document ,
+ const mongoc_write_concern_t * write_concern ,
+ bson_error_t * error )
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_collection_insert_one or
+ mongoc_collection_replace_one );
+
+
+
+
+
+Description
+This function shall save a document into collection . If the document has an _id field it will be updated. Otherwise it will be inserted.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_set_read_concern.html b/libmongoc/1.23.4/mongoc_collection_set_read_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..db679e9981930b8257277a45e0f3ca56c0418b49
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_set_read_concern.html
@@ -0,0 +1,201 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_set_read_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_set_read_concern()
+
+Synopsis
+void
+mongoc_collection_set_read_concern ( mongoc_collection_t * collection ,
+ const mongoc_read_concern_t * read_concern );
+
+
+
+
+
+Description
+Sets the read concern to use for operations on collection .
+The default read concern is empty: No readConcern is sent to the server unless explicitly configured.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_set_read_prefs.html b/libmongoc/1.23.4/mongoc_collection_set_read_prefs.html
new file mode 100644
index 0000000000000000000000000000000000000000..1291d74e36c295ca0c228ad16008aebf20e7073e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_set_read_prefs.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_set_read_prefs() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_set_read_prefs()
+
+Synopsis
+void
+mongoc_collection_set_read_prefs ( mongoc_collection_t * collection ,
+ const mongoc_read_prefs_t * read_prefs );
+
+
+
+
+
+Description
+Sets the default read preferences to use for operations on collection not specifying a read preference.
+The global default is MONGOC_READ_PRIMARY: if the client is connected to a replica set it reads from the primary, otherwise it reads from the current MongoDB server.
+Please see the MongoDB website for a description of Read Preferences .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_set_write_concern.html b/libmongoc/1.23.4/mongoc_collection_set_write_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..db046d2fe549d9a4b1f27433fe743129086de926
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_set_write_concern.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_set_write_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_set_write_concern()
+
+Synopsis
+void
+mongoc_collection_set_write_concern (
+ mongoc_collection_t * collection ,
+ const mongoc_write_concern_t * write_concern );
+
+
+
+
+
+Description
+Sets the write concern to use for operations on collection .
+The default write concern is MONGOC_WRITE_CONCERN_W_DEFAULT: the driver blocks awaiting basic acknowledgement of write operations from MongoDB. This is the correct write concern for the great majority of applications.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_stats.html b/libmongoc/1.23.4/mongoc_collection_stats.html
new file mode 100644
index 0000000000000000000000000000000000000000..fdc696a270d54364a544b19676e5e58d92de2bf5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_stats.html
@@ -0,0 +1,218 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_stats() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_stats()
+
+Synopsis
+bool
+mongoc_collection_stats ( mongoc_collection_t * collection ,
+ const bson_t * options ,
+ bson_t * reply ,
+ bson_error_t * error ) BSON_GNUC_DEPRECATED ;
+
+
+
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+options : An optional bson_t containing extra options to pass to the collStats command.
+reply : An uninitialized bson_t to store the result.
+error : An optional location for a bson_error_t or NULL .
+
+
+
+Description
+Run the collStats command to retrieve statistics about the collection.
+The command uses the mongoc_read_prefs_t set on collection .
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+reply is always initialized and must be freed with bson_destroy() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_t.html b/libmongoc/1.23.4/mongoc_collection_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..59c19944d45d884c8e1a5dfefb5d84d19aea0f68
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_t.html
@@ -0,0 +1,252 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_t
+
+Synopsis
+typedef struct _mongoc_collection_t mongoc_collection_t ;
+
+
+mongoc_collection_t provides access to a MongoDB collection. This handle is useful for actions for most CRUD operations, I.e. insert, update, delete, find, etc.
+
+
+Read Preferences and Write Concerns
+Read preferences and write concerns are inherited from the parent client. They can be overridden by set_* commands if so desired.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_update.html b/libmongoc/1.23.4/mongoc_collection_update.html
new file mode 100644
index 0000000000000000000000000000000000000000..312ef6f233b77918da461497540135bf5601642e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_update.html
@@ -0,0 +1,219 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_update() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_update()
+
+Synopsis
+bool
+mongoc_collection_update ( mongoc_collection_t * collection ,
+ mongoc_update_flags_t flags ,
+ const bson_t * selector ,
+ const bson_t * update ,
+ const mongoc_write_concern_t * write_concern ,
+ bson_error_t * error );
+
+
+
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_update_many.html b/libmongoc/1.23.4/mongoc_collection_update_many.html
new file mode 100644
index 0000000000000000000000000000000000000000..443db4d13f92868f67916d4c55b948b7ae1a8c4e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_update_many.html
@@ -0,0 +1,240 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_update_many() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_update_many()
+
+Synopsis
+bool
+mongoc_collection_update_many ( mongoc_collection_t * collection ,
+ const bson_t * selector ,
+ const bson_t * update ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+selector : A bson_t containing the query to match documents for updating.
+update : A bson_t containing the update to perform. If updating with a pipeline, a bson_t array.
+reply : Optional. An uninitialized bson_t populated with the update result, or NULL .
+error : An optional location for a bson_error_t or NULL .
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+Description
+This function updates all documents in collection that match selector .
+To update at most one document see mongoc_collection_update_one() .
+If you pass a non-NULL reply , it is filled out with fields matchedCount , modifiedCount , and optionally upsertedId if applicable. If there is a server error then reply contains either a “writeErrors” array with one subdocument or a “writeConcernErrors” array. The reply must be freed with bson_destroy() .
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_update_one.html b/libmongoc/1.23.4/mongoc_collection_update_one.html
new file mode 100644
index 0000000000000000000000000000000000000000..6c5f751808632ac3dd51981c3cb67a29b49b361c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_update_one.html
@@ -0,0 +1,320 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_update_one() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_update_one()
+
+Synopsis
+bool
+mongoc_collection_update_one ( mongoc_collection_t * collection ,
+ const bson_t * selector ,
+ const bson_t * update ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+collection : A mongoc_collection_t .
+selector : A bson_t containing the query to match the document for updating.
+update : A bson_t containing the update to perform. If updating with a pipeline, a bson_t array.
+reply : Optional. An uninitialized bson_t populated with the update result, or NULL .
+error : An optional location for a bson_error_t or NULL .
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+Description
+This function updates at most one document in collection that matches selector .
+To update multiple documents see mongoc_collection_update_many() .
+If you pass a non-NULL reply , it is filled out with fields matchedCount , modifiedCount , and optionally upsertedId if applicable. If there is a server error then reply contains either a “writeErrors” array with one subdocument or a “writeConcernErrors” array. The reply must be freed with bson_destroy() .
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+Example
+
+
example-update.c
+
#include "mongoc/mongoc.h"
+
+int
+main ( void )
+{
+ bson_t * to_insert = BCON_NEW ( "_id" , BCON_INT32 ( 1 ));
+ bson_t * selector = BCON_NEW ( "_id" , "{" , "$gt" , BCON_INT32 ( 0 ), "}" );
+ bson_t * update = BCON_NEW ( "$set" , "{" , "x" , BCON_INT32 ( 1 ), "}" );
+ const bson_t * next_doc ;
+ char * to_str ;
+ bson_error_t error = { 0 };
+ mongoc_cursor_t * cursor ;
+ mongoc_client_t * client ;
+ mongoc_collection_t * coll ;
+ const char * uri_string = "mongodb://localhost:27017/?appname=example-update" ;
+ mongoc_uri_t * uri = mongoc_uri_new_with_error ( uri_string , & error );
+
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ coll = mongoc_client_get_collection ( client , "db" , "example_coll" );
+
+ mongoc_client_set_error_api ( client , 2 );
+ /* insert a document */
+ if ( ! mongoc_collection_insert_one ( coll , to_insert , NULL , NULL , & error )) {
+ fprintf ( stderr , "insert failed: %s \n " , error . message );
+ return EXIT_FAILURE ;
+ }
+
+ if ( ! mongoc_collection_update_one (
+ coll , selector , update , NULL , NULL , & error )) {
+ fprintf ( stderr , "update failed: %s \n " , error . message );
+ return EXIT_FAILURE ;
+ }
+
+ to_str = bson_as_relaxed_extended_json ( to_insert , NULL );
+ printf ( "inserted: %s \n " , to_str );
+ bson_free ( to_str );
+
+ cursor = mongoc_collection_find_with_opts ( coll , selector , NULL , NULL );
+ BSON_ASSERT ( mongoc_cursor_next ( cursor , & next_doc ));
+ printf ( "after update, collection has the following document: \n " );
+
+ to_str = bson_as_relaxed_extended_json ( next_doc , NULL );
+ printf ( "%s \n " , to_str );
+ bson_free ( to_str );
+
+ BSON_ASSERT ( mongoc_collection_drop ( coll , NULL ));
+
+ bson_destroy ( to_insert );
+ bson_destroy ( update );
+ bson_destroy ( selector );
+ mongoc_collection_destroy ( coll );
+ mongoc_uri_destroy ( uri );
+ mongoc_client_destroy ( client );
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_validate.html b/libmongoc/1.23.4/mongoc_collection_validate.html
new file mode 100644
index 0000000000000000000000000000000000000000..a011a3850ceb9e65be8ae0de4d02c7c3a464cd81
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_validate.html
@@ -0,0 +1,219 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_validate() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_validate()
+
+Synopsis
+bool
+mongoc_collection_validate ( mongoc_collection_t * collection ,
+ const bson_t * options ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+
+
+
+
+Description
+This function is a helper function to execute the validate MongoDB command.
+Currently, the only supported options are full , which is a boolean and scandata , also a boolean.
+See the MongoDB documentation for more information on this command.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+reply is always initialized if it’s not NULL and must be destroyed with bson_destroy() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_watch.html b/libmongoc/1.23.4/mongoc_collection_watch.html
new file mode 100644
index 0000000000000000000000000000000000000000..e45a68f5425b9c0c9be95f5cfcf96862e2718659
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_watch.html
@@ -0,0 +1,238 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_watch() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_watch()
+
+Synopsis
+mongoc_change_stream_t *
+mongoc_collection_watch ( const mongoc_collection_t * coll ,
+ const bson_t * pipeline ,
+ const bson_t * opts ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+A helper function to create a change stream. It is preferred to call this
+function over using a raw aggregation to create a change stream.
+This function uses the read preference and read concern of the collection. If
+the change stream needs to re-establish connection, the same read preference
+will be used. This may happen if the change stream encounters a resumable error.
+
+
Warning
+
A change stream is only supported with majority read concern.
+
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+Parameters
+
+coll : A mongoc_collection_t specifying the collection which the change stream listens to.
+pipeline : A bson_t representing an aggregation pipeline appended to the change stream. This may be an empty document.
+opts : A bson_t containing change stream options.
+
+opts may be NULL or a BSON document with additional command options:
+
+batchSize : An int32 representing number of documents requested to be returned on each call to mongoc_change_stream_next()
+resumeAfter : A Document representing the logical starting point of the change stream. The result of mongoc_change_stream_get_resume_token() or the _id field of any change received from a change stream can be used here. This option is mutually exclusive with startAfter and startAtOperationTime .
+startAfter : A Document representing the logical starting point of the change stream. Unlike resumeAfter , this can resume notifications after an “invalidate” event. The result of mongoc_change_stream_get_resume_token() or the _id field of any change received from a change stream can be used here. This option is mutually exclusive with resumeAfter and startAtOperationTime .
+startAtOperationTime : A Timestamp . The change stream only provides changes that occurred at or after the specified timestamp. Any command run against the server will return an operation time that can be used here. This option is mutually exclusive with resumeAfter and startAfter .
+maxAwaitTimeMS : An int64 representing the maximum amount of time a call to mongoc_change_stream_next() will block waiting for data
+fullDocument : An optional UTF-8 string. Set this option to “default”, “updateLookup”, “whenAvailable”, or “required”, If unset, The string “default” is assumed. Set this option to “updateLookup” to direct the change stream cursor to lookup the most current majority-committed version of the document associated to an update change stream event.
+fullDocumentBeforeChange : An optional UTF-8 string. Set this option to “whenAvailable”, “required”, or “off”. When unset, the default value is “off”. Similar to “fullDocument”, but returns the value of the document before the associated change.
+comment : A bson_value_t specifying the comment to attach to this command. The comment will appear in log messages, profiler output, and currentOp output. Only string values are supported prior to MongoDB 4.4.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_collection_write_command_with_opts.html b/libmongoc/1.23.4/mongoc_collection_write_command_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..f78dd559be92eb35d98f0c4e9b817f1926bee267
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_collection_write_command_with_opts.html
@@ -0,0 +1,249 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_collection_write_command_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_collection_write_command_with_opts()
+
+Synopsis
+bool
+mongoc_collection_write_command_with_opts ( mongoc_collection_t * collection ,
+ const bson_t * command ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+Execute a command on the server, applying logic that is specific to commands that write, and taking the MongoDB server version into account. To send a raw command to the server without any of this logic, use mongoc_collection_command_simple() .
+Use this function for commands that write such as “drop” or “createRole” (but not for “insert”, “update”, or “delete”, see Basic Write Operations ). Write concern and collation can be overridden by various sources. In a transaction, read concern and write concern are prohibited in opts . The highest-priority sources for these options are listed first in the following table. The write concern is omitted for MongoDB before 3.4.
+
+
+Write Concern
+Collation
+
+
+
+opts
+opts
+
+Transaction
+
+
+collection
+
+
+
+
+See the example for transactions and for the “distinct” command with opts .
+reply is always initialized, and must be freed with bson_destroy() .
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+Basic Write Operations
+Do not use this function to call the basic write commands “insert”, “update”, and “delete”. Those commands require special logic not implemented in mongoc_collection_write_command_with_opts . For basic write operations use CRUD functions such as mongoc_collection_insert_one() and the others described in the CRUD tutorial , or use the Bulk API .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_clone.html b/libmongoc/1.23.4/mongoc_cursor_clone.html
new file mode 100644
index 0000000000000000000000000000000000000000..1f23364b2db7c404e9594f5cf7ea408cef4b3130
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_clone.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_clone() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_clone()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_cursor_clone ( const mongoc_cursor_t * cursor )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+This function shall create a copy of a mongoc_cursor_t . The cloned cursor will be reset to the beginning of the query, and therefore the query will be re-executed on the MongoDB server when mongoc_cursor_next() is called.
+
+
+Returns
+A newly allocated mongoc_cursor_t that should be freed with mongoc_cursor_destroy() when no longer in use.
+
+
Warning
+
Failure to handle the result of this function is a programming error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_current.html b/libmongoc/1.23.4/mongoc_cursor_current.html
new file mode 100644
index 0000000000000000000000000000000000000000..fb90dd8ae01a5fd04933568e8b1228f8aee289b6
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_current.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_current() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_current()
+
+Synopsis
+const bson_t *
+mongoc_cursor_current ( const mongoc_cursor_t * cursor );
+
+
+
+
+
+Description
+Fetches the cursors current document or NULL if there has been an error.
+
+
+Returns
+A bson_t that should not be modified or freed or NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_destroy.html b/libmongoc/1.23.4/mongoc_cursor_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..a9d41b267d9f1507f9d951b8701f7d168c0d98dd
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_destroy.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_destroy()
+
+Synopsis
+void
+mongoc_cursor_destroy ( mongoc_cursor_t * cursor );
+
+
+
+
+
+Description
+Frees a mongoc_cursor_t and releases all associated resources. If a server-side cursor has been allocated, it will be released as well. Does nothing if cursor is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_error.html b/libmongoc/1.23.4/mongoc_cursor_error.html
new file mode 100644
index 0000000000000000000000000000000000000000..c0ba39dcc5415f01548f5a5192ebd7d4793c9b13
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_error.html
@@ -0,0 +1,216 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_error() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_error()
+
+Synopsis
+bool
+mongoc_cursor_error ( mongoc_cursor_t * cursor , bson_error_t * error );
+
+
+
+
+
+Description
+This function checks to see if an error has occurred while iterating the cursor.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+false if no error has occurred, otherwise true and error is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_error_document.html b/libmongoc/1.23.4/mongoc_cursor_error_document.html
new file mode 100644
index 0000000000000000000000000000000000000000..88dedff1899ae5e2b97251ba2b822b56cd449602
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_error_document.html
@@ -0,0 +1,310 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_error_document() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_error_document()
+
+Synopsis
+bool
+mongoc_cursor_error_document ( mongoc_cursor_t * cursor ,
+ bson_error_t * error ,
+ const bson_t ** reply );
+
+
+
+
+
+Description
+This function checks to see if an error has occurred while iterating the cursor.
+If an error occurred client-side, for example if there was a network error or timeout, or the cursor was created with invalid parameters, then reply is set to an empty BSON document. If an error occurred server-side, reply is set to the server’s reply document with information about the error.
+
+
+Errors
+Errors are propagated via the error and reply parameters.
+
+
+Returns
+False if no error has occurred, otherwise true and error is set.
+If the function returns true and reply is not NULL, then reply is set to a pointer to a BSON document, which is either empty or the server’s error response. The document is invalid after the cursor is freed with mongoc_cursor_destroy() .
+
+
+Example
+This example shows the difference between a client-side and server-side error. If the client cannot connect to the server, for example, the error message includes “No suitable servers found” and reply is set to an empty BSON document.
+On the other hand, if the client connects to the server successfully and attempts to execute an invalid query, the error message comes from the server and reply is set to the server’s reply document, with fields errmsg and code .
+void
+run_query ( const char * uri_str , const bson_t * query )
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ mongoc_cursor_t * cursor ;
+ const bson_t * doc ;
+ bson_error_t error ;
+ const bson_t * reply ;
+ char * str ;
+
+ client = mongoc_client_new ( uri_str );
+
+ mongoc_client_set_error_api ( client , 2 );
+
+ collection = mongoc_client_get_collection ( client , "db" , "collection" );
+ cursor = mongoc_collection_find_with_opts (
+ collection ,
+ query ,
+ NULL , /* additional options */
+ NULL ); /* read prefs, NULL for default */
+
+ /* this loop is never run: mongoc_cursor_next immediately returns false */
+ while ( mongoc_cursor_next ( cursor , & doc )) {
+ }
+
+ if ( mongoc_cursor_error_document ( cursor , & error , & reply )) {
+ str = bson_as_json ( reply , NULL );
+ fprintf ( stderr , "Cursor Failure: %s \n Reply: %s \n " , error . message , str );
+ bson_free ( str );
+ }
+
+ mongoc_cursor_destroy ( cursor );
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+}
+
+int
+main ( int argc , char * argv [])
+{
+ bson_t * good_query ;
+ bson_t * bad_query ;
+
+ mongoc_init ();
+
+ /* find documents matching the query {"x": 1} */
+ good_query = BCON_NEW ( "x" , BCON_INT64 ( 1 ));
+
+ /* Cause a network error. This will print an error and empty reply document:
+ *
+ * Cursor Failure: No suitable servers found (`serverSelectionTryOnce` set):
+ * [Failed to resolve 'fake-domain']
+ *
+ * Reply: { }
+ *
+ */
+ run_query ( "mongodb://fake-domain/?appname=cursor-example" , good_query );
+
+ /* invalid: {"x": {"$badOperator": 1}} */
+ bad_query = BCON_NEW ( "x" , "{" , "$badOperator" , BCON_INT64 ( 1 ), "}" );
+
+ /* Cause a server error. This will print an error and server reply document:
+ *
+ * Cursor Failure: unknown operator: $badOperator
+ *
+ * Reply:
+ * {"ok": 0.0,
+ * "errmsg":"unknown operator: $badOperator",
+ * "code": 2,
+ * "codeName":"BadValue"
+ * }
+ *
+ */
+ run_query ( "mongodb://localhost/?appname=cursor-example" , bad_query );
+
+ bson_destroy ( good_query );
+ bson_destroy ( bad_query );
+
+ mongoc_cleanup ();
+
+ return 0 ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_get_batch_size.html b/libmongoc/1.23.4/mongoc_cursor_get_batch_size.html
new file mode 100644
index 0000000000000000000000000000000000000000..06caf40e25e28c8b297d0d770dca5a71965b1912
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_get_batch_size.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_get_batch_size() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_get_batch_size()
+
+Synopsis
+uint32_t
+mongoc_cursor_get_batch_size ( const mongoc_cursor_t * cursor );
+
+
+
+
+
+Description
+Retrieve the cursor’s batch size, the maximum number of documents returned per round trip to the server. A batch size of zero means the cursor accepts the server’s maximum batch size.
+See Cursor Batches in the MongoDB Manual.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_get_hint.html b/libmongoc/1.23.4/mongoc_cursor_get_hint.html
new file mode 100644
index 0000000000000000000000000000000000000000..fd8d9ea09bf2a25f56ed24965ee6da03bc592014
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_get_hint.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_get_hint() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_get_hint()
+
+Synopsis
+uint32_t
+mongoc_cursor_get_hint ( const mongoc_cursor_t * cursor );
+
+
+
+
+
+Description
+Retrieves the opaque id of the server used for the operation.
+(The function name includes the old term “hint” for the sake of backward compatibility, but we now call this number a “server id”.)
+This number is zero until the driver actually uses a server when executing the find operation or mongoc_cursor_set_hint() is called.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_get_host.html b/libmongoc/1.23.4/mongoc_cursor_get_host.html
new file mode 100644
index 0000000000000000000000000000000000000000..ac751f71df2c77ef60491e0c34e782e5f91b5731
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_get_host.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_get_host() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_get_host()
+
+Synopsis
+void
+mongoc_cursor_get_host ( mongoc_cursor_t * cursor , mongoc_host_list_t * host );
+
+
+
+
+
+Description
+Fetches the MongoDB host that the cursor is communicating with in the host out parameter.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_get_id.html b/libmongoc/1.23.4/mongoc_cursor_get_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..4e3c6a054210dcc650777d49ffa25f73b6948381
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_get_id.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_get_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_get_id()
+
+Synopsis
+int64_t
+mongoc_cursor_get_id ( const mongoc_cursor_t * cursor );
+
+
+
+
+
+Description
+Retrieves the cursor id used by the server to track the cursor.
+This number is zero until the driver actually uses a server when executing the query, and after it has fetched all results from the server.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_get_limit.html b/libmongoc/1.23.4/mongoc_cursor_get_limit.html
new file mode 100644
index 0000000000000000000000000000000000000000..47c0227ccc52dbf9d0716dcae2f2f682ffdba3e9
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_get_limit.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_get_limit() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_get_limit()
+
+Synopsis
+int64_t
+mongoc_cursor_get_limit ( mongoc_cursor_t * cursor );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_get_max_await_time_ms.html b/libmongoc/1.23.4/mongoc_cursor_get_max_await_time_ms.html
new file mode 100644
index 0000000000000000000000000000000000000000..4094fb65febc50ddc4cf35f4b55c5a2c639b3f25
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_get_max_await_time_ms.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_get_max_await_time_ms() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_get_max_await_time_ms()
+
+Synopsis
+uint32_t
+mongoc_cursor_get_max_await_time_ms ( mongoc_cursor_t * cursor );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_is_alive.html b/libmongoc/1.23.4/mongoc_cursor_is_alive.html
new file mode 100644
index 0000000000000000000000000000000000000000..0accab0696604ccb142a4e6cb83433dcc6a4a9ce
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_is_alive.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_is_alive() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_is_alive()
+
+Synopsis
+bool
+mongoc_cursor_is_alive ( const mongoc_cursor_t * cursor )
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_cursor_more );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_more.html b/libmongoc/1.23.4/mongoc_cursor_more.html
new file mode 100644
index 0000000000000000000000000000000000000000..f119796f80653b773df59f4db939f32eaa32dbc9
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_more.html
@@ -0,0 +1,210 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_more() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_more()
+
+Synopsis
+bool
+mongoc_cursor_more ( mongoc_cursor_t * cursor );
+
+
+
+
+
+Description
+This function shall indicate if there is potentially more data to be read from the cursor. This is only useful with tailable cursors. Use mongoc_cursor_next() for regular cursors.
+Details: mongoc_cursor_more is unreliable because it does not contact the server to see if there are actually more documents in the result set. It simply returns true if the cursor has not begun, or if it has begun and there are buffered documents in the client-side cursor, or if it has begun and the server has not yet told the cursor it is completely iterated.
+This is unreliable with regular queries because it returns true for a new cursor before iteration, even if the cursor will match no documents. It is also true if the collection has been dropped on the server since the previous fetch, or if the cursor has finished its final batch and the next batch will be empty.
+
+
+Returns
+true if the cursor has locally-buffered documents, or if a round-trip to the server might fetch additional documents.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_new_from_command_reply.html b/libmongoc/1.23.4/mongoc_cursor_new_from_command_reply.html
new file mode 100644
index 0000000000000000000000000000000000000000..c63a16e4c7b1db025e5498ed2e849a58f28152ec
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_new_from_command_reply.html
@@ -0,0 +1,231 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_new_from_command_reply() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_new_from_command_reply()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_cursor_new_from_command_reply ( mongoc_client_t * client ,
+ bson_t * reply ,
+ uint32_t server_id );
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_cursor_new_from_command_reply_with_opts );
+
+
+
+
+
+Parameters
+
+client : A mongoc_client_t .
+reply : The reply to a command, such as “aggregate”, “find”, or “listCollections”, that returns a cursor document. The reply is destroyed by mongoc_cursor_new_from_command_reply and must not be accessed afterward.
+server_id : The opaque id of the server used to execute the command.
+
+
+
+Description
+Some MongoDB commands return a “cursor” document. For example, given an “aggregate” command:
+ { "aggregate" : "collection", "pipeline" : [], "cursor" : {}}
+
+
+The server replies:
+ {
+ "cursor" : {
+ "id" : 1234,
+ "ns" : "db.collection",
+ "firstBatch" : [ ]
+ },
+ "ok" : 1
+}
+
+
+mongoc_cursor_new_from_command_reply is a low-level function that initializes a mongoc_cursor_t from such a reply. Additional options such as “tailable” or “awaitData” can be included in the reply.
+When synthesizing a completed cursor response that has no more batches (i.e. with cursor id 0), set server_id to 0 as well.
+Use this function only for building a language driver that wraps the C Driver. When writing applications in C, higher-level functions such as mongoc_collection_aggregate() are more appropriate, and ensure compatibility with a range of MongoDB versions.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_new_from_command_reply_with_opts.html b/libmongoc/1.23.4/mongoc_cursor_new_from_command_reply_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..bc9940bc1c08d9d1013b94d7ed4eb4babf858529
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_new_from_command_reply_with_opts.html
@@ -0,0 +1,233 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_new_from_command_reply_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_new_from_command_reply_with_opts()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_cursor_new_from_command_reply_with_opts ( mongoc_client_t * client ,
+ bson_t * reply ,
+ const bson_t * opts );
+
+
+
+
+Parameters
+
+client : A mongoc_client_t .
+reply : The reply to a command, such as “aggregate”, “find”, or “listCollections”, that returns a cursor document. The reply is destroyed by mongoc_cursor_new_from_command_reply_with_opts and must not be accessed afterward.
+opts : A bson_t .
+
+opts may be NULL or a BSON document with additional options, which have the same meaning for this function as for mongoc_collection_find_with_opts() :
+
+awaitData
+batchSize
+limit
+maxAwaitTimeMS
+serverId
+sessionId
+skip
+tailable
+
+
+
+Description
+Some MongoDB commands return a “cursor” document. For example, given an “aggregate” command:
+ { "aggregate" : "collection", "pipeline" : [], "cursor" : {}}
+
+
+The server replies:
+ {
+ "cursor" : {
+ "id" : 1234,
+ "ns" : "db.collection",
+ "firstBatch" : [ ]
+ },
+ "ok" : 1
+}
+
+
+mongoc_cursor_new_from_command_reply_with_opts is a low-level function that initializes a mongoc_cursor_t from such a reply.
+Use this function only for building a language driver that wraps the C Driver. When writing applications in C, higher-level functions such as mongoc_collection_aggregate() are more appropriate, and ensure compatibility with a range of MongoDB versions.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_next.html b/libmongoc/1.23.4/mongoc_cursor_next.html
new file mode 100644
index 0000000000000000000000000000000000000000..5968104a44d5220dc51e1223cb3b1e920b555892
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_next.html
@@ -0,0 +1,209 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_next() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_next()
+
+Synopsis
+bool
+mongoc_cursor_next ( mongoc_cursor_t * cursor , const bson_t ** bson );
+
+
+
+
+
+Description
+This function shall iterate the underlying cursor, setting bson to the next document.
+This function is a blocking function.
+
+
+Returns
+This function returns true if a valid bson document was read from the cursor. Otherwise, false if there was an error or the cursor was exhausted.
+Errors can be determined with the mongoc_cursor_error() function.
+
+
+Lifecycle
+The bson objects set in this function are ephemeral and good until the next call. This means that you must copy the returned bson if you wish to retain it beyond the lifetime of a single call to mongoc_cursor_next() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_set_batch_size.html b/libmongoc/1.23.4/mongoc_cursor_set_batch_size.html
new file mode 100644
index 0000000000000000000000000000000000000000..9e36ce2d82e78df774324b346b70236178703b01
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_set_batch_size.html
@@ -0,0 +1,201 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_set_batch_size() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_set_batch_size()
+
+Synopsis
+void
+mongoc_cursor_set_batch_size ( mongoc_cursor_t * cursor , uint32_t batch_size );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_set_hint.html b/libmongoc/1.23.4/mongoc_cursor_set_hint.html
new file mode 100644
index 0000000000000000000000000000000000000000..9725149ea9041dc04fd1b529db0eaf24e09af4f0
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_set_hint.html
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_set_hint() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_set_hint()
+
+Synopsis
+bool
+mongoc_cursor_set_hint ( mongoc_cursor_t * cursor , uint32_t server_id );
+
+
+
+
+
+Description
+Specifies which server to use for the operation. This function has an effect only if called before the find operation is executed.
+(The function name includes the old term “hint” for the sake of backward compatibility, but we now call this number a “server id”.)
+Use mongoc_cursor_set_hint only for building a language driver that wraps the C Driver. When writing applications in C, leave the server id unset and allow the driver to choose a suitable server from the find operation’s read preference.
+
+
+Returns
+Returns true on success. If any arguments are invalid, returns false and logs an error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_set_limit.html b/libmongoc/1.23.4/mongoc_cursor_set_limit.html
new file mode 100644
index 0000000000000000000000000000000000000000..5e58ed945fb1f4f25594723e7611128eb2768d81
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_set_limit.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_set_limit() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_set_limit()
+
+Synopsis
+bool
+mongoc_cursor_set_limit ( mongoc_cursor_t * cursor , int64_t limit );
+
+
+
+
+
+
+Returns
+Returns true on success. If any arguments are invalid, returns false and leaves the limit unchanged.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_set_max_await_time_ms.html b/libmongoc/1.23.4/mongoc_cursor_set_max_await_time_ms.html
new file mode 100644
index 0000000000000000000000000000000000000000..70410f390b4444d3003e8e01e574ceb1f2c7c009
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_set_max_await_time_ms.html
@@ -0,0 +1,209 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_set_max_await_time_ms() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_set_max_await_time_ms()
+
+Synopsis
+void
+mongoc_cursor_set_max_await_time_ms ( mongoc_cursor_t * cursor ,
+ uint32_t max_await_time_ms );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_cursor_t.html b/libmongoc/1.23.4/mongoc_cursor_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..85562654a65628e599cb2e9ec98debd1f969d82c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_cursor_t.html
@@ -0,0 +1,313 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_cursor_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_cursor_t
+Client-side cursor abstraction
+
+Synopsis
+typedef struct _mongoc_cursor_t mongoc_cursor_t ;
+
+
+mongoc_cursor_t provides access to a MongoDB query cursor.
+It wraps up the wire protocol negotiation required to initiate a query and retrieve an unknown number of documents.
+Common cursor operations include:
+
+Cursors are lazy, meaning that no connection is established and no network traffic occurs until the first call to mongoc_cursor_next() .
+
+
+Thread Safety
+mongoc_cursor_t is NOT thread safe. It may only be used from within the thread in which it was created.
+
+
+Example
+
+
Query MongoDB and iterate results
+
/* gcc example-client.c -o example-client $(pkg-config --cflags --libs
+ * libmongoc-1.0) */
+
+/* ./example-client [CONNECTION_STRING [COLLECTION_NAME]] */
+
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ mongoc_cursor_t * cursor ;
+ bson_error_t error ;
+ const bson_t * doc ;
+ const char * collection_name = "test" ;
+ bson_t query ;
+ char * str ;
+ const char * uri_string = "mongodb://127.0.0.1/?appname=client-example" ;
+ mongoc_uri_t * uri ;
+
+ mongoc_init ();
+ if ( argc > 1 ) {
+ uri_string = argv [ 1 ];
+ }
+
+ if ( argc > 2 ) {
+ collection_name = argv [ 2 ];
+ }
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+
+ bson_init ( & query );
+ collection = mongoc_client_get_collection ( client , "test" , collection_name );
+ cursor = mongoc_collection_find_with_opts (
+ collection ,
+ & query ,
+ NULL , /* additional options */
+ NULL ); /* read prefs, NULL for default */
+
+ while ( mongoc_cursor_next ( cursor , & doc )) {
+ str = bson_as_canonical_extended_json ( doc , NULL );
+ fprintf ( stdout , "%s \n " , str );
+ bson_free ( str );
+ }
+
+ if ( mongoc_cursor_error ( cursor , & error )) {
+ fprintf ( stderr , "Cursor Failure: %s \n " , error . message );
+ return EXIT_FAILURE ;
+ }
+
+ bson_destroy ( & query );
+ mongoc_cursor_destroy ( cursor );
+ mongoc_collection_destroy ( collection );
+ mongoc_uri_destroy ( uri );
+ mongoc_client_destroy ( client );
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_add_user.html b/libmongoc/1.23.4/mongoc_database_add_user.html
new file mode 100644
index 0000000000000000000000000000000000000000..25e3673dfedb7ba927d0bbfc57ef3b5e874ddc99
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_add_user.html
@@ -0,0 +1,217 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_add_user() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_add_user()
+
+Synopsis
+bool
+mongoc_database_add_user ( mongoc_database_t * database ,
+ const char * username ,
+ const char * password ,
+ const bson_t * roles ,
+ const bson_t * custom_data ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+database : A mongoc_database_t .
+username : The name of the user.
+password : The cleartext password for the user.
+roles : An optional bson_t for roles.
+custom_data : A optional bson_t for extra data.
+error : A location for a bson_error_t or NULL .
+
+This function shall create a new user with access to database .
+
+
Warning
+
Do not call this function without TLS.
+
+
+
+Errors
+Errors are returned through the error parameter and can include socket or other server side failures.
+
+
+Returns
+Returns true if the user was successfully added. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_aggregate.html b/libmongoc/1.23.4/mongoc_database_aggregate.html
new file mode 100644
index 0000000000000000000000000000000000000000..a13b97dd2dc54c8c32963c40e92f51a053b589ee
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_aggregate.html
@@ -0,0 +1,293 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_aggregate() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_aggregate()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_database_aggregate ( mongoc_database_t * database ,
+ const bson_t * pipeline ,
+ const bson_t * opts ,
+ const mongoc_read_prefs_t * read_prefs )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Parameters
+
+database : A mongoc_database_t .
+pipeline : A bson_t , either a BSON array or a BSON document containing an array field named “pipeline”.
+opts : A bson_t containing options for the command, or NULL .
+read_prefs : A mongoc_read_prefs_t or NULL .
+
+opts may be NULL or a BSON document with additional command options:
+
+readConcern : Construct a mongoc_read_concern_t and use mongoc_read_concern_append() to add the read concern to opts . See the example code for mongoc_client_read_command_with_opts() . Read concern requires MongoDB 3.2 or later, otherwise an error is returned.
+writeConcern : Construct a mongoc_write_concern_t and use mongoc_write_concern_append() to add the write concern to opts . See the example code for mongoc_client_write_command_with_opts() .
+sessionId : First, construct a mongoc_client_session_t with mongoc_client_start_session() . You can begin a transaction with mongoc_client_session_start_transaction() , optionally with a mongoc_transaction_opt_t that overrides the options inherited from database , and use mongoc_client_session_append() to add the session to opts . See the example code for mongoc_client_session_t .
+bypassDocumentValidation : Set to true to skip server-side schema validation of the provided BSON documents.
+collation : Configure textual comparisons. See Setting Collation Order , and the MongoDB Manual entry on Collation . Collation requires MongoDB 3.2 or later, otherwise an error is returned.
+serverId : To target a specific server, include an int32 “serverId” field. Obtain the id by calling mongoc_client_select_server() , then mongoc_server_description_id() on its return value.
+batchSize : An int32 representing number of documents requested to be returned on each call to mongoc_cursor_next()
+let : A BSON document consisting of any number of parameter names, each followed by definitions of constants in the MQL Aggregate Expression language.
+comment : A bson_value_t specifying the comment to attach to this command. The comment will appear in log messages, profiler output, and currentOp output. Only string values are supported prior to MongoDB 4.4.
+
+For a list of all options, see the MongoDB Manual entry on the aggregate command .
+
+
+Description
+This function creates a cursor which sends the aggregate command on the underlying database upon the first call to mongoc_cursor_next() . For more information on building aggregation pipelines, see the MongoDB Manual entry on the aggregate command . Note that the pipeline must start with a compatible stage that does not require an underlying collection (e.g. “$currentOp”, “$listLocalSessions”).
+Read preferences, read and write concern, and collation can be overridden by various sources. The highest-priority sources for these options are listed first in the following table. In a transaction, read concern and write concern are prohibited in opts and the read preference must be primary or NULL. Write concern is applied from opts , or if opts has no write concern and the aggregation pipeline includes “$out”, the write concern is applied from database .
+
+
+Read Preferences
+Read Concern
+Write Concern
+Collation
+
+
+
+read_prefs
+opts
+opts
+opts
+
+Transaction
+Transaction
+Transaction
+
+
+database
+database
+database
+
+
+
+
+See the example for transactions and for the “distinct” command with opts .
+This function is considered a retryable read operation unless the pipeline contains a write stage like $out or $merge.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+
+Example
+#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+
+static mongoc_cursor_t *
+current_op_query ( mongoc_client_t * client )
+{
+ mongoc_cursor_t * cursor ;
+ mongoc_database_t * database ;
+ bson_t * pipeline ;
+
+ pipeline = BCON_NEW ( "pipeline" ,
+ "[" ,
+ "{" ,
+ "$currentOp" ,
+ "{" ,
+ "}" ,
+ "}" ,
+ "]" );
+
+ /* $currentOp must be run on the admin database */
+ database = mongoc_client_get_database ( client , "admin" );
+
+ cursor = mongoc_database_aggregate (
+ database , pipeline , NULL , NULL );
+
+ bson_destroy ( pipeline );
+ mongoc_database_destroy ( database );
+
+ return cursor ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_command.html b/libmongoc/1.23.4/mongoc_database_command.html
new file mode 100644
index 0000000000000000000000000000000000000000..5abb7641de2107d4e357bdda9beb1efa0b96c55f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_command.html
@@ -0,0 +1,224 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_command() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_command()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_database_command ( mongoc_database_t * database ,
+ mongoc_query_flags_t flags ,
+ uint32_t skip ,
+ uint32_t limit ,
+ uint32_t batch_size ,
+ const bson_t * command ,
+ const bson_t * fields ,
+ const mongoc_read_prefs_t * read_prefs )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+This function is superseded by mongoc_database_command_with_opts() , mongoc_database_read_command_with_opts() , mongoc_database_write_command_with_opts() , and mongoc_database_read_write_command_with_opts() .
+
+
+Description
+This function creates a cursor which will execute the command when mongoc_cursor_next() is called on it. The database’s read preference, read concern, and write concern are not applied to the command, and mongoc_cursor_next() will not check the server response for a write concern error or write concern timeout.
+This function is not considered a retryable read operation.
+
+
+Parameters
+
+database : A mongoc_database_t .
+flags : A mongoc_query_flags_t .
+skip : The number of documents to skip on the server.
+limit : The maximum number of documents to return from the cursor.
+batch_size : Attempt to batch results from the server in groups of batch_size documents.
+command : A bson_t containing the command.
+fields : An optional bson_t containing the fields to return. NULL for all fields.
+read_prefs : An optional mongoc_read_prefs_t . Otherwise, the command uses mode MONGOC_READ_PRIMARY .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_command_simple.html b/libmongoc/1.23.4/mongoc_database_command_simple.html
new file mode 100644
index 0000000000000000000000000000000000000000..a60f6eb509cb37f98a681811ae2830341fbad9b5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_command_simple.html
@@ -0,0 +1,213 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_command_simple() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_command_simple()
+
+Synopsis
+bool
+mongoc_database_command_simple ( mongoc_database_t * database ,
+ const bson_t * command ,
+ const mongoc_read_prefs_t * read_prefs ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+database : A mongoc_database_t .
+command : A bson_t containing the command.
+read_prefs : An optional mongoc_read_prefs_t . Otherwise, the command uses mode MONGOC_READ_PRIMARY .
+reply : A location to store the commands first result document.
+error : An optional location for a bson_error_t or NULL .
+
+This is a simplified interface to mongoc_database_command() that returns the first result document. The database’s read preference, read concern, and write concern are not applied to the command. The parameter reply is initialized even upon failure to simplify memory management.
+This function is not considered a retryable read operation.
+
+
+Errors
+Errors are propagated through the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+This function does not check the server response for a write concern error or write concern timeout.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_command_with_opts.html b/libmongoc/1.23.4/mongoc_database_command_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..9c4aded254c175729ec49470857f4d5cc23c8c36
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_command_with_opts.html
@@ -0,0 +1,254 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_command_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_command_with_opts()
+
+Synopsis
+bool
+mongoc_database_command_with_opts (
+ mongoc_database_t * database ,
+ const bson_t * command ,
+ const mongoc_read_prefs_t * read_prefs ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+Execute a command on the server, interpreting opts according to the MongoDB server version. To send a raw command to the server without any of this logic, use mongoc_client_command_simple() .
+Read preferences, read and write concern, and collation can be overridden by various sources. The highest-priority sources for these options are listed first:
+
+
+Read Preferences
+Read Concern
+Write Concern
+Collation
+
+
+
+read_prefs
+opts
+opts
+opts
+
+Transaction
+Transaction
+Transaction
+
+
+
+
+In a transaction, read concern and write concern are prohibited in opts and the read preference must be primary or NULL.
+See the example for transactions and for the “distinct” command with opts .
+reply is always initialized, and must be freed with bson_destroy() .
+This function is not considered a retryable read operation.
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+The reply is not parsed for a write concern timeout or write concern error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_copy.html b/libmongoc/1.23.4/mongoc_database_copy.html
new file mode 100644
index 0000000000000000000000000000000000000000..6d40835a64277da5a97348d88f78229e0d10ceba
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_copy.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_copy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_copy()
+
+Synopsis
+mongoc_database_t *
+mongoc_database_copy ( mongoc_database_t * database ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_create_collection.html b/libmongoc/1.23.4/mongoc_database_create_collection.html
new file mode 100644
index 0000000000000000000000000000000000000000..074310877d2e6aae2e0701e0d68a7b4dc2febd21
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_create_collection.html
@@ -0,0 +1,216 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_create_collection() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_create_collection()
+
+Synopsis
+mongoc_collection_t *
+mongoc_database_create_collection ( mongoc_database_t * database ,
+ const char * name ,
+ const bson_t * opts ,
+ bson_error_t * error )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Parameters
+
+database : A mongoc_database_t .
+name : The name of the new collection.
+opts : An optional bson_t for opts to the create command.
+error : A location for a bson_error_t or NULL .
+
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+This function returns a newly allocated mongoc_collection_t upon success, NULL upon failure and error is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_destroy.html b/libmongoc/1.23.4/mongoc_database_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..2c6bce0b5b691b3d8a69fd221902d8adf3657cfe
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_destroy.html
@@ -0,0 +1,195 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_destroy()
+
+Synopsis
+void
+mongoc_database_destroy ( mongoc_database_t * database );
+
+
+Releases all resources associated with database , including freeing the structure. Does nothing if database is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_drop.html b/libmongoc/1.23.4/mongoc_database_drop.html
new file mode 100644
index 0000000000000000000000000000000000000000..a1e9e221dcac6453890066bdc96fc2427c477f50
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_drop.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_drop() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_drop()
+
+Synopsis
+bool
+mongoc_database_drop ( mongoc_database_t * database , bson_error_t * error );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_drop_with_opts.html b/libmongoc/1.23.4/mongoc_database_drop_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..79fcb1a7a464b57cce241a2d3b4a85a4dbf5ffb1
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_drop_with_opts.html
@@ -0,0 +1,218 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_drop_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_drop_with_opts()
+
+Synopsis
+bool
+mongoc_database_drop_with_opts ( mongoc_database_t * database ,
+ const bson_t * opts ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+Description
+This function attempts to drop a database on the MongoDB server.
+If no write concern is provided in opts , the database’s write concern is used.
+The encryptedFields document in opts may be used to drop a collection used for Using Client-Side Field Level Encryption .
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_find_collections.html b/libmongoc/1.23.4/mongoc_database_find_collections.html
new file mode 100644
index 0000000000000000000000000000000000000000..61449b5e0f58871108cb2d8ec88f7b10fec083d4
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_find_collections.html
@@ -0,0 +1,222 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_find_collections() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_find_collections()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_database_find_collections ( mongoc_database_t * database ,
+ const bson_t * filter ,
+ bson_error_t * error )
+ BSON_GNUC_WARN_UNUSED_RESULT
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_database_find_collections_with_opts );
+
+
+
+
+
+Description
+Fetches a cursor containing documents, each corresponding to a collection on this database.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+Parameters
+
+database : A mongoc_database_t .
+filter : A matcher used by the server to filter the returned collections. May be NULL .
+error : An optional location for a bson_error_t or NULL .
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_find_collections_with_opts.html b/libmongoc/1.23.4/mongoc_database_find_collections_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..6c8f53f4c2ba1b319e5e4f3ce12431ccdf98971d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_find_collections_with_opts.html
@@ -0,0 +1,259 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_find_collections_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_find_collections_with_opts()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_database_find_collections_with_opts ( mongoc_database_t * database ,
+ const bson_t * opts )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Fetches a cursor containing documents, each corresponding to a collection on this database.
+To get collection names only, use mongoc_database_get_collection_names_with_opts() .
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+
+
+
+Examples
+{
+ bson_t opts = BSON_INITIALIZER ;
+ bson_t name_filter ;
+ const bson_t * doc ;
+ bson_iter_t iter ;
+ bson_error_t error ;
+
+ BSON_APPEND_DOCUMENT_BEGIN ( & opts , "filter" , & name_filter );
+ /* find collections with names like "abbbbc" */
+ BSON_APPEND_REGEX ( & name_filter , "name" , "ab+c" , NULL );
+ bson_append_document_end ( & opts , & name_filter );
+
+ cursor = mongoc_database_find_collections_with_opts ( database , & opts );
+ while ( mongoc_cursor_next ( cursor , & doc )) {
+ bson_iter_init_find ( & iter , doc , "name" );
+ printf ( "found collection: %s \n " , bson_iter_utf8 ( & iter , NULL ));
+ }
+
+ if ( mongoc_cursor_error ( cursor , & error ))
+ fprintf ( stderr , "%s \n " , error . msg );
+ }
+
+ mongoc_cursor_destroy ( cursor );
+ bson_destroy ( & opts );
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_get_collection.html b/libmongoc/1.23.4/mongoc_database_get_collection.html
new file mode 100644
index 0000000000000000000000000000000000000000..01565cd68c1e8bcf99bd43fe013e1de19257a6d6
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_get_collection.html
@@ -0,0 +1,194 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_get_collection() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_get_collection()
+
+Synopsis
+mongoc_collection_t *
+mongoc_database_get_collection ( mongoc_database_t * database ,
+ const char * name ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Allocates a new mongoc_collection_t structure for the collection named name in database .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_get_collection_names.html b/libmongoc/1.23.4/mongoc_database_get_collection_names.html
new file mode 100644
index 0000000000000000000000000000000000000000..e8f9ad0ab2d48bf74a1165733459903a3a483d7d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_get_collection_names.html
@@ -0,0 +1,218 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_get_collection_names() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_get_collection_names()
+
+Synopsis
+char **
+mongoc_database_get_collection_names ( mongoc_database_t * database ,
+ bson_error_t * error )
+ BSON_GNUC_WARN_UNUSED_RESULT
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_database_get_collection_names_with_opts );
+
+
+
+
+
+Description
+Fetches a NULL terminated array of NULL-byte terminated char* strings containing the names of all of the collections in database .
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+A NULL terminated array of NULL terminated char* strings that should be freed with bson_strfreev() . Upon failure, NULL is returned and error is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_get_collection_names_with_opts.html b/libmongoc/1.23.4/mongoc_database_get_collection_names_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..6f2eef9293a4eb68bb5bc064849008b2ccc03d57
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_get_collection_names_with_opts.html
@@ -0,0 +1,246 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_get_collection_names_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_get_collection_names_with_opts()
+
+Synopsis
+char **
+mongoc_database_get_collection_names_with_opts ( mongoc_database_t * database ,
+ const bson_t * opts ,
+ bson_error_t * error )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Fetches a NULL terminated array of NULL-byte terminated char* strings containing the names of all of the collections in database .
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+A NULL terminated array of NULL terminated char* strings that should be freed with bson_strfreev() . Upon failure, NULL is returned and error is set.
+
+
+Examples
+{
+ bson_t opts = BSON_INITIALIZER ;
+ mongoc_read_concern_t * rc ;
+ bson_error_t error ;
+ char ** strv ;
+ unsigned i ;
+
+ rc = mongoc_read_concern_new ();
+ mongoc_read_concern_set_level ( rc , MONGOC_READ_CONCERN_LEVEL_MAJORITY );
+ mongoc_read_concern_append ( rc , & opts );
+ if (( strv = mongoc_database_get_collection_names_with_opts (
+ database , & opts , & error ))) {
+
+ for ( i = 0 ; strv [ i ]; i ++ )
+ printf ( "%s \n " , strv [ i ]);
+
+ bson_strfreev ( strv );
+ } else {
+ fprintf ( stderr , "Command failed: %s \n " , error . message );
+ }
+
+ mongoc_read_concern_destroy ( rc );
+ bson_destroy ( & opts );
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_get_name.html b/libmongoc/1.23.4/mongoc_database_get_name.html
new file mode 100644
index 0000000000000000000000000000000000000000..a3a47afbd801c9f1db7c5993717b7d7cbe0181e8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_get_name.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_get_name() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_get_name()
+
+Synopsis
+const char *
+mongoc_database_get_name ( mongoc_database_t * database );
+
+
+Fetches the name of the database.
+
+
+
+Returns
+A string which should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_get_read_concern.html b/libmongoc/1.23.4/mongoc_database_get_read_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..56a7c61662441a802443df44ad6bb1546170d6af
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_get_read_concern.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_get_read_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_get_read_concern()
+
+Synopsis
+const mongoc_read_concern_t *
+mongoc_database_get_read_concern ( const mongoc_database_t * database );
+
+
+This function retrieves the default mongoc_read_concern_t to use with database as configured by the client.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_get_read_prefs.html b/libmongoc/1.23.4/mongoc_database_get_read_prefs.html
new file mode 100644
index 0000000000000000000000000000000000000000..ab33a4690c73dde7183c0e860f137c1b66005fd5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_get_read_prefs.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_get_read_prefs() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_get_read_prefs()
+
+Synopsis
+const mongoc_read_prefs_t *
+mongoc_database_get_read_prefs ( const mongoc_database_t * database );
+
+
+Fetches the default read preferences to use with database .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_get_write_concern.html b/libmongoc/1.23.4/mongoc_database_get_write_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..b63c34f86662996d2b838489c670ba37d0e6acaf
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_get_write_concern.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_get_write_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_get_write_concern()
+
+Synopsis
+const mongoc_write_concern_t *
+mongoc_database_get_write_concern ( const mongoc_database_t * database );
+
+
+This function retrieves the default mongoc_write_concern_t to use with database as configured by the client.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_has_collection.html b/libmongoc/1.23.4/mongoc_database_has_collection.html
new file mode 100644
index 0000000000000000000000000000000000000000..9b2a212705e0e5e0055cb6e3488e049c2b9c19ea
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_has_collection.html
@@ -0,0 +1,208 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_has_collection() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_has_collection()
+
+Synopsis
+bool
+mongoc_database_has_collection ( mongoc_database_t * database ,
+ const char * name ,
+ bson_error_t * error );
+
+
+This function checks to see if a collection exists on the MongoDB server within database .
+
+
+Parameters
+
+database : A mongoc_database_t .
+name : A string containing the name of the collection.
+error : An optional location for a bson_error_t or NULL .
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+If the function succeeds, it returns true if the collection exists and false if not, and in either case the fields of error are cleared, if error is not NULL.
+Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_read_command_with_opts.html b/libmongoc/1.23.4/mongoc_database_read_command_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..fcf2bf39ae6ce1ac4edbda28c3bdc3487c08e08d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_read_command_with_opts.html
@@ -0,0 +1,256 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_read_command_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_read_command_with_opts()
+
+Synopsis
+bool
+mongoc_database_read_command_with_opts ( mongoc_database_t * database ,
+ const bson_t * command ,
+ const mongoc_read_prefs_t * read_prefs ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+Execute a command on the server, applying logic that is specific to commands that read, and taking the MongoDB server version into account. To send a raw command to the server without any of this logic, use mongoc_database_command_simple() .
+Use this function for commands that read such as “count” or “distinct”.
+Read preferences, read concern, and collation can be overridden by various sources. In a transaction, read concern and write concern are prohibited in opts and the read preference must be primary or NULL. The highest-priority sources for these options are listed first in the following table. No write concern is applied.
+
+
+Read Preferences
+Read Concern
+Collation
+
+
+
+read_prefs
+opts
+opts
+
+Transaction
+Transaction
+
+
+database
+
+
+
+
+
+See the example for transactions and for the “distinct” command with opts .
+reply is always initialized, and must be freed with bson_destroy() .
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+Retry logic occurs regardless of the underlying command. Retrying mapReduce has the potential for degraded performance.
+Retrying a getMore command has the potential to miss results. For those commands, use generic command helpers (like mongoc_database_command_with_opts() ) instead.
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_read_write_command_with_opts.html b/libmongoc/1.23.4/mongoc_database_read_write_command_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..0e066aa84642c2b3d4905341bd8f72b4e208384e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_read_write_command_with_opts.html
@@ -0,0 +1,255 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_read_write_command_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_read_write_command_with_opts()
+
+Synopsis
+bool
+mongoc_database_read_write_command_with_opts (
+ mongoc_database_t * database ,
+ const bson_t * command ,
+ const mongoc_read_prefs_t * read_prefs /* UNUSED */ ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+Execute a command on the server, applying logic for commands that both read and write, and taking the MongoDB server version into account. To send a raw command to the server without any of this logic, use mongoc_database_command_simple() .
+Use this function for commands that both read and write, such as “mapReduce” with an output collection.
+Read and write concern and collation can be overridden by various sources. In a transaction, read concern and write concern are prohibited in opts . The highest-priority sources for these options are listed first in the following table. Read preferences are not applied. The write concern is omitted for MongoDB before 3.4.
+
+
+Read Concern
+Write Concern
+Collation
+
+
+
+opts
+opts
+opts
+
+Transaction
+Transaction
+
+
+database
+database
+
+
+
+
+See the example for transactions and for the “distinct” command with opts .
+reply is always initialized, and must be freed with bson_destroy() .
+(The mongoc_read_prefs_t parameter was included by mistake when this function was introduced in libmongoc 1.5. A command that writes must not obey a read preference.)
+
+
+Parameters
+
+database : A mongoc_database_t .
+command : A bson_t containing the command specification.
+read_prefs : Ignored.
+opts : A bson_t containing additional options.
+reply : A location for the resulting document.
+error : An optional location for a bson_error_t or NULL .
+
+opts may be NULL or a BSON document with additional command options:
+
+Consult the MongoDB Manual entry on Database Commands for each command’s arguments.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_remove_all_users.html b/libmongoc/1.23.4/mongoc_database_remove_all_users.html
new file mode 100644
index 0000000000000000000000000000000000000000..a203eee0608051f49b638e474e6bdff45308234b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_remove_all_users.html
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_remove_all_users() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_remove_all_users()
+
+Synopsis
+bool
+mongoc_database_remove_all_users ( mongoc_database_t * database ,
+ bson_error_t * error );
+
+
+This function will remove all users configured to access database .
+
+
+
+Errors
+Errors are propagated via the error parameter. This may fail if there are socket errors or the current user is not authorized to perform the given command.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_remove_user.html b/libmongoc/1.23.4/mongoc_database_remove_user.html
new file mode 100644
index 0000000000000000000000000000000000000000..f57770b41811c006d931b8d3082d21f2e0d3d464
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_remove_user.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_remove_user() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_remove_user()
+
+Synopsis
+bool
+mongoc_database_remove_user ( mongoc_database_t * database ,
+ const char * username ,
+ bson_error_t * error );
+
+
+This function removes the user named username from database .
+
+
+Parameters
+
+database : A mongoc_database_t .
+username : A string containing the username of the user to remove.
+error : An optional location for a bson_error_t or NULL .
+
+
+
+Errors
+Errors are propagated via the error parameter. This could include socket errors or others if the current user is not authorized to perform the command.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_set_read_concern.html b/libmongoc/1.23.4/mongoc_database_set_read_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..04bdf4bb7d0bc0f0775997523823f888255b322e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_set_read_concern.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_set_read_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_set_read_concern()
+
+Synopsis
+void
+mongoc_database_set_read_concern ( mongoc_database_t * database ,
+ const mongoc_read_concern_t * read_concern );
+
+
+This function sets the read concern to use on operations performed with database . Collections created with mongoc_database_get_collection() after this call will inherit this read concern.
+The default read concern is empty: No readConcern is sent to the server unless explicitly configured.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_set_read_prefs.html b/libmongoc/1.23.4/mongoc_database_set_read_prefs.html
new file mode 100644
index 0000000000000000000000000000000000000000..bae52fdc8e3dd7b0f34ea4108837d82bb2473013
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_set_read_prefs.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_set_read_prefs() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_set_read_prefs()
+
+Synopsis
+void
+mongoc_database_set_read_prefs ( mongoc_database_t * database ,
+ const mongoc_read_prefs_t * read_prefs );
+
+
+This function sets the default read preferences to use on operations performed with database . Collections created with mongoc_database_get_collection() after this call will inherit these read preferences.
+The global default is MONGOC_READ_PRIMARY: if the client is connected to a replica set it reads from the primary, otherwise it reads from the current MongoDB server.
+Please see the MongoDB website for a description of Read Preferences .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_set_write_concern.html b/libmongoc/1.23.4/mongoc_database_set_write_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..bebfd53372ca55c070fcf3f53bfbbfa051480096
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_set_write_concern.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_set_write_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_set_write_concern()
+
+Synopsis
+void
+mongoc_database_set_write_concern ( mongoc_database_t * database ,
+ const mongoc_write_concern_t * write_concern );
+
+
+This function sets the write concern to use on operations performed with database . Collections created with mongoc_database_get_collection() after this call will inherit this write concern.
+The default write concern is MONGOC_WRITE_CONCERN_W_DEFAULT: the driver blocks awaiting basic acknowledgement of write operations from MongoDB. This is the correct write concern for the great majority of applications.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_t.html b/libmongoc/1.23.4/mongoc_database_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..595a68c3e461378a63fc76e41464ac3a330886ff
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_t.html
@@ -0,0 +1,250 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_t
+MongoDB Database Abstraction
+
+
+
+Examples
+#include <mongoc/mongoc.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_database_t * database ;
+ mongoc_client_t * client ;
+
+ mongoc_init ();
+
+ client = mongoc_client_new ( "mongodb://localhost/" );
+ database = mongoc_client_get_database ( client , "test" );
+
+ mongoc_database_destroy ( database );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return 0 ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_watch.html b/libmongoc/1.23.4/mongoc_database_watch.html
new file mode 100644
index 0000000000000000000000000000000000000000..d1aeacd5180f484376b221e892b9b90c278a1f26
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_watch.html
@@ -0,0 +1,238 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_watch() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_watch()
+
+Synopsis
+mongoc_change_stream_t *
+mongoc_database_watch ( const mongoc_database_t * db ,
+ const bson_t * pipeline ,
+ const bson_t * opts ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+A helper function to create a change stream. It is preferred to call this
+function over using a raw aggregation to create a change stream.
+This function uses the read preference and read concern of the database. If
+the change stream needs to re-establish connection, the same read preference
+will be used. This may happen if the change stream encounters a resumable error.
+
+
Warning
+
A change stream is only supported with majority read concern.
+
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+Parameters
+
+db : A mongoc_database_t specifying the database which the change stream listens to.
+pipeline : A bson_t representing an aggregation pipeline appended to the change stream. This may be an empty document.
+opts : A bson_t containing change stream options.
+
+opts may be NULL or a BSON document with additional command options:
+
+batchSize : An int32 representing number of documents requested to be returned on each call to mongoc_change_stream_next()
+resumeAfter : A Document representing the logical starting point of the change stream. The result of mongoc_change_stream_get_resume_token() or the _id field of any change received from a change stream can be used here. This option is mutually exclusive with startAfter and startAtOperationTime .
+startAfter : A Document representing the logical starting point of the change stream. Unlike resumeAfter , this can resume notifications after an “invalidate” event. The result of mongoc_change_stream_get_resume_token() or the _id field of any change received from a change stream can be used here. This option is mutually exclusive with resumeAfter and startAtOperationTime .
+startAtOperationTime : A Timestamp . The change stream only provides changes that occurred at or after the specified timestamp. Any command run against the server will return an operation time that can be used here. This option is mutually exclusive with resumeAfter and startAfter .
+maxAwaitTimeMS : An int64 representing the maximum amount of time a call to mongoc_change_stream_next() will block waiting for data
+fullDocument : An optional UTF-8 string. Set this option to “default”, “updateLookup”, “whenAvailable”, or “required”, If unset, The string “default” is assumed. Set this option to “updateLookup” to direct the change stream cursor to lookup the most current majority-committed version of the document associated to an update change stream event.
+fullDocumentBeforeChange : An optional UTF-8 string. Set this option to “whenAvailable”, “required”, or “off”. When unset, the default value is “off”. Similar to “fullDocument”, but returns the value of the document before the associated change.
+comment : A bson_value_t specifying the comment to attach to this command. The comment will appear in log messages, profiler output, and currentOp output. Only string values are supported prior to MongoDB 4.4.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_database_write_command_with_opts.html b/libmongoc/1.23.4/mongoc_database_write_command_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..1ec0c202581b16d8376680310410660b56acb9ca
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_database_write_command_with_opts.html
@@ -0,0 +1,250 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_database_write_command_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_database_write_command_with_opts()
+
+Synopsis
+bool
+mongoc_database_write_command_with_opts ( mongoc_database_t * database ,
+ const bson_t * command ,
+ const bson_t * opts ,
+ bson_t * reply ,
+ bson_error_t * error );
+
+
+Execute a command on the server, applying logic that is specific to commands that write, and taking the MongoDB server version into account. To send a raw command to the server without any of this logic, use mongoc_database_command_simple() .
+Use this function for commands that write such as “drop” or “createRole” (but not for “insert”, “update”, or “delete”, see Basic Write Operations ). Write concern and collation can be overridden by various sources. In a transaction, read concern and write concern are prohibited in opts . The highest-priority sources for these options are listed first in the following table. The write concern is omitted for MongoDB before 3.4.
+
+
+Write Concern
+Collation
+
+
+
+opts
+opts
+
+Transaction
+
+
+database
+
+
+
+
+See the example for transactions and for the “distinct” command with opts .
+reply is always initialized, and must be freed with bson_destroy() .
+
+
+Parameters
+
+database : A mongoc_database_t .
+db_name : The name of the database to run the command on.
+command : A bson_t containing the command specification.
+opts : A bson_t containing additional options.
+reply : A location for the resulting document.
+error : An optional location for a bson_error_t or NULL .
+
+opts may be NULL or a BSON document with additional command options:
+
+Consult the MongoDB Manual entry on Database Commands for each command’s arguments.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+A write concern timeout or write concern error is considered a failure.
+
+
+Basic Write Operations
+Do not use this function to call the basic write commands “insert”, “update”, and “delete”. Those commands require special logic not implemented in mongoc_database_write_command_with_opts . For basic write operations use CRUD functions such as mongoc_collection_insert_one() and the others described in the CRUD tutorial , or use the Bulk API .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_delete_flags_t.html b/libmongoc/1.23.4/mongoc_delete_flags_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..91156013ad1d37a74273100659467cdbce26390f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_delete_flags_t.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_delete_flags_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_delete_flags_t
+Flags for deletion operations
+
+Synopsis
+typedef enum {
+ MONGOC_DELETE_NONE = 0 ,
+ MONGOC_DELETE_SINGLE_REMOVE = 1 << 0 ,
+} mongoc_delete_flags_t ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_error_has_label.html b/libmongoc/1.23.4/mongoc_error_has_label.html
new file mode 100644
index 0000000000000000000000000000000000000000..11527de7faaccba6739628d990e394e62594108c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_error_has_label.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_error_has_label() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_error_has_label()
+
+Synopsis
+bool
+mongoc_error_has_label ( const bson_t * reply , const char * label );
+
+
+Test whether a reply from a failed operation includes a specific error label. See Error Labels for details, and see mongoc_client_session_start_transaction() for example code that demonstrates their use.
+
+
+Parameters
+
+reply : A bson_t , the reply to a failed operation.
+label : The label to test for, such as “TransientTransactionError” or “UnknownTransactionCommitResult”.
+
+
+
+Returns
+Returns true if reply contains the error label.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_append.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_append.html
new file mode 100644
index 0000000000000000000000000000000000000000..a24813a1eeb2ee362433e8bea39cdeef997730a2
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_append.html
@@ -0,0 +1,279 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_append() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_append()
+
+Synopsis
+bool
+mongoc_find_and_modify_opts_append ( mongoc_find_and_modify_opts_t * opts ,
+ const bson_t * extra );
+
+
+
+
+
+Description
+Adds arbitrary options to a findAndModify command.
+extra does not have to remain valid after calling this function.
+extra may be NULL or a BSON document with additional command options:
+
+
+
+Returns
+Returns true on success. If any arguments are invalid, returns false and logs an error.
+
+
+Appending options to findAndModify
+
+
opts.c
+
void
+fam_opts ( mongoc_collection_t * collection )
+{
+ mongoc_find_and_modify_opts_t * opts ;
+ bson_t reply ;
+ bson_t * update ;
+ bson_error_t error ;
+ bson_t query = BSON_INITIALIZER ;
+ mongoc_write_concern_t * wc ;
+ bson_t extra = BSON_INITIALIZER ;
+ bool success ;
+
+
+ /* Find Zlatan Ibrahimovic, the striker */
+ BSON_APPEND_UTF8 ( & query , "firstname" , "Zlatan" );
+ BSON_APPEND_UTF8 ( & query , "lastname" , "Ibrahimovic" );
+ BSON_APPEND_UTF8 ( & query , "profession" , "Football player" );
+
+ /* Bump his age */
+ update = BCON_NEW ( "$inc" , "{" , "age" , BCON_INT32 ( 1 ), "}" );
+
+ opts = mongoc_find_and_modify_opts_new ();
+ mongoc_find_and_modify_opts_set_update ( opts , update );
+
+ /* Abort if the operation takes too long. */
+ mongoc_find_and_modify_opts_set_max_time_ms ( opts , 100 );
+
+ /* Set write concern w: 2 */
+ wc = mongoc_write_concern_new ();
+ mongoc_write_concern_set_w ( wc , 2 );
+ mongoc_write_concern_append ( wc , & extra );
+
+ /* Some future findAndModify option the driver doesn't support conveniently
+ */
+ BSON_APPEND_INT32 ( & extra , "futureOption" , 42 );
+ mongoc_find_and_modify_opts_append ( opts , & extra );
+
+ success = mongoc_collection_find_and_modify_with_opts (
+ collection , & query , opts , & reply , & error );
+
+ if ( success ) {
+ char * str ;
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ } else {
+ fprintf (
+ stderr , "Got error: \" %s \" on line %d \n " , error . message , __LINE__ );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( & extra );
+ bson_destroy ( update );
+ bson_destroy ( & query );
+ mongoc_write_concern_destroy ( wc );
+ mongoc_find_and_modify_opts_destroy ( opts );
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_destroy.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..1901efb73c3695e46051f86abb549edba019dcad
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_destroy.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_destroy()
+
+Synopsis
+void
+mongoc_find_and_modify_opts_destroy (
+ mongoc_find_and_modify_opts_t * find_and_modify_opts );
+
+
+
+
+
+Description
+Frees all resources associated with the find and modify builder structure. Does nothing if find_and_modify_opts is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_bypass_document_validation.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_bypass_document_validation.html
new file mode 100644
index 0000000000000000000000000000000000000000..f774a38ff7f98011b311c1c3e999f15f968a8067
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_bypass_document_validation.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_get_bypass_document_validation() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_get_bypass_document_validation()
+
+Synopsis
+bool
+mongoc_find_and_modify_opts_get_bypass_document_validation (
+ const mongoc_find_and_modify_opts_t * opts );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_fields.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_fields.html
new file mode 100644
index 0000000000000000000000000000000000000000..f971b843013cadcb68da76b1a635649a5d6f5bb7
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_fields.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_get_fields() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_get_fields()
+
+Synopsis
+void
+mongoc_find_and_modify_opts_get_fields (
+ const mongoc_find_and_modify_opts_t * opts , bson_t * fields );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_flags.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_flags.html
new file mode 100644
index 0000000000000000000000000000000000000000..c888a2c7f894d5b865af6e33768a6f4eaee9441d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_flags.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_get_flags() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_get_flags()
+
+Synopsis
+mongoc_find_and_modify_flags_t
+mongoc_find_and_modify_opts_get_flags (
+ const mongoc_find_and_modify_opts_t * opts );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_max_time_ms.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_max_time_ms.html
new file mode 100644
index 0000000000000000000000000000000000000000..57434dc5e67f1a18991dcfef3f59814af41fa64b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_max_time_ms.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_get_max_time_ms() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_get_max_time_ms()
+
+Synopsis
+uint32_t
+mongoc_find_and_modify_opts_get_max_time_ms (
+ const mongoc_find_and_modify_opts_t * opts );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_sort.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_sort.html
new file mode 100644
index 0000000000000000000000000000000000000000..063e1f2762684cb7c395fcc7c9ef93f967259cf6
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_sort.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_get_sort() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_get_sort()
+
+Synopsis
+void
+mongoc_find_and_modify_opts_get_sort ( const mongoc_find_and_modify_opts_t * opts ,
+ bson_t * sort );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_update.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_update.html
new file mode 100644
index 0000000000000000000000000000000000000000..9d1158316145a0ae080369c0f693c3be95e5d4ea
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_get_update.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_get_update() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_get_update()
+
+Synopsis
+void
+mongoc_find_and_modify_opts_get_update (
+ const mongoc_find_and_modify_opts_t * opts , bson_t * update );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_new.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..a0800459022a8dc508c277e85f5d13de95826f1a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_new.html
@@ -0,0 +1,192 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_new()
+
+Synopsis
+mongoc_find_and_modify_opts_t *
+mongoc_find_and_modify_opts_new ( void ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Returns
+Creates a newly allocated find and modify builder structure that is used to create a findAndModify command. This should be freed with mongoc_find_and_modify_opts_destroy() when no longer in use.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_bypass_document_validation.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_bypass_document_validation.html
new file mode 100644
index 0000000000000000000000000000000000000000..97cef83c29365ffb4dea6f796d58ac9586cb2ead
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_bypass_document_validation.html
@@ -0,0 +1,273 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_set_bypass_document_validation() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_set_bypass_document_validation()
+
+Synopsis
+bool
+mongoc_find_and_modify_opts_set_bypass_document_validation (
+ mongoc_find_and_modify_opts_t * opts , bool bypass );
+
+
+This option is only available when talking to MongoDB 3.2 and later.
+
+
+
+Description
+Adds bypassDocumentValidation argument to the builder.
+When authentication is enabled, the authenticated user must have either the “dbadmin” or “restore” roles to bypass document validation.
+
+
+Returns
+Returns true if it successfully added the option to the builder, otherwise false and logs an error.
+
+
+Setting bypassDocumentValidation
+
+
bypass.c
+
void
+fam_bypass ( mongoc_collection_t * collection )
+{
+ mongoc_find_and_modify_opts_t * opts ;
+ bson_t reply ;
+ bson_t * update ;
+ bson_error_t error ;
+ bson_t query = BSON_INITIALIZER ;
+ bool success ;
+
+
+ /* Find Zlatan Ibrahimovic, the striker */
+ BSON_APPEND_UTF8 ( & query , "firstname" , "Zlatan" );
+ BSON_APPEND_UTF8 ( & query , "lastname" , "Ibrahimovic" );
+ BSON_APPEND_UTF8 ( & query , "profession" , "Football player" );
+
+ /* Bump his age */
+ update = BCON_NEW ( "$inc" , "{" , "age" , BCON_INT32 ( 1 ), "}" );
+
+ opts = mongoc_find_and_modify_opts_new ();
+ mongoc_find_and_modify_opts_set_update ( opts , update );
+ /* He can still play, even though he is pretty old. */
+ mongoc_find_and_modify_opts_set_bypass_document_validation ( opts , true );
+
+ success = mongoc_collection_find_and_modify_with_opts (
+ collection , & query , opts , & reply , & error );
+
+ if ( success ) {
+ char * str ;
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ } else {
+ fprintf (
+ stderr , "Got error: \" %s \" on line %d \n " , error . message , __LINE__ );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( update );
+ bson_destroy ( & query );
+ mongoc_find_and_modify_opts_destroy ( opts );
+}
+
+
+
+Outputs:
+{
+ "lastErrorObject" : { "updatedExisting" : true , "n" : 1 },
+ "value" : {
+ "_id" : { "$oid" : "56562a99d13e6d86239c7b00" },
+ "age" : 34 ,
+ "firstname" : "Zlatan" ,
+ "goals" : 342 ,
+ "lastname" : "Ibrahimovic" ,
+ "profession" : "Football player" ,
+ "position" : "striker"
+ },
+ "ok" : 1
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_fields.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_fields.html
new file mode 100644
index 0000000000000000000000000000000000000000..7a6a6249c4313f078a8b9149aac318c90f8a48ac
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_fields.html
@@ -0,0 +1,272 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_set_fields() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_set_fields()
+
+Synopsis
+bool
+mongoc_find_and_modify_opts_set_fields ( mongoc_find_and_modify_opts_t * opts ,
+ const bson_t * fields );
+
+
+
+
+Parameters
+
+opts : A mongoc_find_and_modify_opts_t .
+fields : A subset of fields to return. Choose which fields to include by appending {fieldname: 1} for each fieldname, or excluding it with {fieldname: 0} .
+
+
+
+Description
+Adds fields argument to the builder.
+fields does not have to remain valid after calling this function.
+
+
+Returns
+Returns true if it successfully added the option to the builder, otherwise false .
+
+
+Setting fields
+
+
fields.c
+
void
+fam_fields ( mongoc_collection_t * collection )
+{
+ mongoc_find_and_modify_opts_t * opts ;
+ bson_t fields = BSON_INITIALIZER ;
+ bson_t * update ;
+ bson_t reply ;
+ bson_error_t error ;
+ bson_t query = BSON_INITIALIZER ;
+ bool success ;
+
+
+ /* Find Zlatan Ibrahimovic */
+ BSON_APPEND_UTF8 ( & query , "lastname" , "Ibrahimovic" );
+ BSON_APPEND_UTF8 ( & query , "firstname" , "Zlatan" );
+
+ /* Return his goal tally */
+ BSON_APPEND_INT32 ( & fields , "goals" , 1 );
+
+ /* Bump his goal tally */
+ update = BCON_NEW ( "$inc" , "{" , "goals" , BCON_INT32 ( 1 ), "}" );
+
+ opts = mongoc_find_and_modify_opts_new ();
+ mongoc_find_and_modify_opts_set_update ( opts , update );
+ mongoc_find_and_modify_opts_set_fields ( opts , & fields );
+ /* Return the new tally */
+ mongoc_find_and_modify_opts_set_flags ( opts ,
+ MONGOC_FIND_AND_MODIFY_RETURN_NEW );
+
+ success = mongoc_collection_find_and_modify_with_opts (
+ collection , & query , opts , & reply , & error );
+
+ if ( success ) {
+ char * str ;
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ } else {
+ fprintf (
+ stderr , "Got error: \" %s \" on line %d \n " , error . message , __LINE__ );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( update );
+ bson_destroy ( & fields );
+ bson_destroy ( & query );
+ mongoc_find_and_modify_opts_destroy ( opts );
+}
+
+
+
+Outputs:
+{
+ "lastErrorObject"
+ : { "updatedExisting" : true , "n" : 1 },
+ "value"
+ : { "_id" : { "$oid" : "56562a99d13e6d86239c7b00" }, "goals" : 343 },
+ "ok" : 1
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_flags.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_flags.html
new file mode 100644
index 0000000000000000000000000000000000000000..0473e9168f2fe32037544560654f622ff5e347e9
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_flags.html
@@ -0,0 +1,298 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_set_flags() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_set_flags()
+
+Synopsis
+bool
+mongoc_find_and_modify_opts_set_flags (
+ mongoc_find_and_modify_opts_t * opts ,
+ const mongoc_find_and_modify_flags_t flags );
+
+
+
+
+
+Description
+Adds one or more flags to the builder.
+
+
+MONGOC_FIND_AND_MODIFY_NONE
+Default. Doesn’t add anything to the builder.
+
+MONGOC_FIND_AND_MODIFY_REMOVE
+Will instruct find_and_modify to remove the matching document.
+
+MONGOC_FIND_AND_MODIFY_UPSERT
+Update the matching document or, if no document matches, insert the document.
+
+MONGOC_FIND_AND_MODIFY_RETURN_NEW
+Return the resulting document.
+
+
+
+
+
+Returns
+Returns Returns true if it successfully added the option to the builder, otherwise false and logs an error.
+
+
+Setting flags
+
+
flags.c
+
void
+fam_flags ( mongoc_collection_t * collection )
+{
+ mongoc_find_and_modify_opts_t * opts ;
+ bson_t reply ;
+ bson_error_t error ;
+ bson_t query = BSON_INITIALIZER ;
+ bson_t * update ;
+ bool success ;
+
+
+ /* Find Zlatan Ibrahimovic, the striker */
+ BSON_APPEND_UTF8 ( & query , "firstname" , "Zlatan" );
+ BSON_APPEND_UTF8 ( & query , "lastname" , "Ibrahimovic" );
+ BSON_APPEND_UTF8 ( & query , "profession" , "Football player" );
+ BSON_APPEND_INT32 ( & query , "age" , 34 );
+ BSON_APPEND_INT32 (
+ & query , "goals" , ( 16 + 35 + 23 + 57 + 16 + 14 + 28 + 84 ) + ( 1 + 6 + 62 ));
+
+ /* Add his football position */
+ update = BCON_NEW ( "$set" , "{" , "position" , BCON_UTF8 ( "striker" ), "}" );
+
+ opts = mongoc_find_and_modify_opts_new ();
+
+ mongoc_find_and_modify_opts_set_update ( opts , update );
+
+ /* Create the document if it didn't exist, and return the updated document */
+ mongoc_find_and_modify_opts_set_flags (
+ opts , MONGOC_FIND_AND_MODIFY_UPSERT | MONGOC_FIND_AND_MODIFY_RETURN_NEW );
+
+ success = mongoc_collection_find_and_modify_with_opts (
+ collection , & query , opts , & reply , & error );
+
+ if ( success ) {
+ char * str ;
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ } else {
+ fprintf (
+ stderr , "Got error: \" %s \" on line %d \n " , error . message , __LINE__ );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( update );
+ bson_destroy ( & query );
+ mongoc_find_and_modify_opts_destroy ( opts );
+}
+
+
+
+Outputs:
+{
+ "lastErrorObject" : {
+ "updatedExisting" : false ,
+ "n" : 1 ,
+ "upserted" : { "$oid" : "56562a99d13e6d86239c7b00" }
+ },
+ "value" : {
+ "_id" : { "$oid" : "56562a99d13e6d86239c7b00" },
+ "age" : 34 ,
+ "firstname" : "Zlatan" ,
+ "goals" : 342 ,
+ "lastname" : "Ibrahimovic" ,
+ "profession" : "Football player" ,
+ "position" : "striker"
+ },
+ "ok" : 1
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_max_time_ms.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_max_time_ms.html
new file mode 100644
index 0000000000000000000000000000000000000000..a04a5a86c51ce7665c587820956b7571ab7d3404
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_max_time_ms.html
@@ -0,0 +1,271 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_set_max_time_ms() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_set_max_time_ms()
+
+Synopsis
+bool
+mongoc_find_and_modify_opts_set_max_time_ms (
+ mongoc_find_and_modify_opts_t * opts , uint32_t max_time_ms );
+
+
+
+
+Parameters
+
+opts : A mongoc_find_and_modify_opts_t .
+max_time_ms : The maximum server-side execution time permitted, in milliseconds, or 0 to specify no maximum time (the default setting).
+
+
+
+Description
+Adds a maxTimeMS argument to the builder.
+
+
+Returns
+Returns true if it successfully added the option to the builder, otherwise false and logs an error.
+Note: although max_time_ms is a uint32_t, it is possible to set it as a uint64_t through the options arguments in some cursor returning functions like mongoc_collection_find_with_opts() .
+
+
+Setting maxTimeMS
+
+
opts.c
+
void
+fam_opts ( mongoc_collection_t * collection )
+{
+ mongoc_find_and_modify_opts_t * opts ;
+ bson_t reply ;
+ bson_t * update ;
+ bson_error_t error ;
+ bson_t query = BSON_INITIALIZER ;
+ mongoc_write_concern_t * wc ;
+ bson_t extra = BSON_INITIALIZER ;
+ bool success ;
+
+
+ /* Find Zlatan Ibrahimovic, the striker */
+ BSON_APPEND_UTF8 ( & query , "firstname" , "Zlatan" );
+ BSON_APPEND_UTF8 ( & query , "lastname" , "Ibrahimovic" );
+ BSON_APPEND_UTF8 ( & query , "profession" , "Football player" );
+
+ /* Bump his age */
+ update = BCON_NEW ( "$inc" , "{" , "age" , BCON_INT32 ( 1 ), "}" );
+
+ opts = mongoc_find_and_modify_opts_new ();
+ mongoc_find_and_modify_opts_set_update ( opts , update );
+
+ /* Abort if the operation takes too long. */
+ mongoc_find_and_modify_opts_set_max_time_ms ( opts , 100 );
+
+ /* Set write concern w: 2 */
+ wc = mongoc_write_concern_new ();
+ mongoc_write_concern_set_w ( wc , 2 );
+ mongoc_write_concern_append ( wc , & extra );
+
+ /* Some future findAndModify option the driver doesn't support conveniently
+ */
+ BSON_APPEND_INT32 ( & extra , "futureOption" , 42 );
+ mongoc_find_and_modify_opts_append ( opts , & extra );
+
+ success = mongoc_collection_find_and_modify_with_opts (
+ collection , & query , opts , & reply , & error );
+
+ if ( success ) {
+ char * str ;
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ } else {
+ fprintf (
+ stderr , "Got error: \" %s \" on line %d \n " , error . message , __LINE__ );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( & extra );
+ bson_destroy ( update );
+ bson_destroy ( & query );
+ mongoc_write_concern_destroy ( wc );
+ mongoc_find_and_modify_opts_destroy ( opts );
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_sort.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_sort.html
new file mode 100644
index 0000000000000000000000000000000000000000..f6befaa4eb825120c075ceb1c3016921c44bad4b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_sort.html
@@ -0,0 +1,275 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_set_sort() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_set_sort()
+
+Synopsis
+bool
+mongoc_find_and_modify_opts_set_sort ( mongoc_find_and_modify_opts_t * opts ,
+ const bson_t * sort );
+
+
+
+
+Parameters
+
+opts : A mongoc_find_and_modify_opts_t .
+sort : Determines which document the operation modifies if the query selects multiple documents. findAndModify modifies the first document in the sort order specified by this argument.
+
+
+
+Description
+Adds sort argument to the builder.
+sort does not have to remain valid after calling this function.
+
+
+Returns
+Returns true if it successfully added the option to the builder, otherwise false .
+
+
+Setting sort
+
+
sort.c
+
void
+fam_sort ( mongoc_collection_t * collection )
+{
+ mongoc_find_and_modify_opts_t * opts ;
+ bson_t * update ;
+ bson_t sort = BSON_INITIALIZER ;
+ bson_t reply ;
+ bson_error_t error ;
+ bson_t query = BSON_INITIALIZER ;
+ bool success ;
+
+
+ /* Find all users with the lastname Ibrahimovic */
+ BSON_APPEND_UTF8 ( & query , "lastname" , "Ibrahimovic" );
+
+ /* Sort by age (descending) */
+ BSON_APPEND_INT32 ( & sort , "age" , -1 );
+
+ /* Bump his goal tally */
+ update = BCON_NEW ( "$set" , "{" , "oldest" , BCON_BOOL ( true ), "}" );
+
+ opts = mongoc_find_and_modify_opts_new ();
+ mongoc_find_and_modify_opts_set_update ( opts , update );
+ mongoc_find_and_modify_opts_set_sort ( opts , & sort );
+
+ success = mongoc_collection_find_and_modify_with_opts (
+ collection , & query , opts , & reply , & error );
+
+ if ( success ) {
+ char * str ;
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ } else {
+ fprintf (
+ stderr , "Got error: \" %s \" on line %d \n " , error . message , __LINE__ );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( update );
+ bson_destroy ( & sort );
+ bson_destroy ( & query );
+ mongoc_find_and_modify_opts_destroy ( opts );
+}
+
+
+
+Outputs:
+{
+ "lastErrorObject" : { "updatedExisting" : true , "n" : 1 },
+ "value" : {
+ "_id" : { "$oid" : "56562a99d13e6d86239c7b00" },
+ "age" : 35 ,
+ "firstname" : "Zlatan" ,
+ "goals" : 343 ,
+ "lastname" : "Ibrahimovic" ,
+ "profession" : "Football player" ,
+ "position" : "striker" ,
+ "author" : true
+ },
+ "ok" : 1
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_update.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_update.html
new file mode 100644
index 0000000000000000000000000000000000000000..05ab99b2bc11a7ac12b6313a0ad07f207a9dde87
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_set_update.html
@@ -0,0 +1,274 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_set_update() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_set_update()
+
+Synopsis
+bool
+mongoc_find_and_modify_opts_set_update ( mongoc_find_and_modify_opts_t * opts ,
+ const bson_t * update );
+
+
+
+
+
+Description
+Adds update argument to the builder.
+update does not have to remain valid after calling this function.
+
+
+Returns
+Returns true if it successfully added the option to the builder, otherwise false .
+
+
+Setting update
+
+
update.c
+
void
+fam_update ( mongoc_collection_t * collection )
+{
+ mongoc_find_and_modify_opts_t * opts ;
+ bson_t * update ;
+ bson_t reply ;
+ bson_error_t error ;
+ bson_t query = BSON_INITIALIZER ;
+ bool success ;
+
+
+ /* Find Zlatan Ibrahimovic */
+ BSON_APPEND_UTF8 ( & query , "firstname" , "Zlatan" );
+ BSON_APPEND_UTF8 ( & query , "lastname" , "Ibrahimovic" );
+
+ /* Make him a book author */
+ update = BCON_NEW ( "$set" , "{" , "author" , BCON_BOOL ( true ), "}" );
+
+ opts = mongoc_find_and_modify_opts_new ();
+ /* Note that the document returned is the _previous_ version of the document
+ * To fetch the modified new version, use
+ * mongoc_find_and_modify_opts_set_flags (opts,
+ * MONGOC_FIND_AND_MODIFY_RETURN_NEW);
+ */
+ mongoc_find_and_modify_opts_set_update ( opts , update );
+
+ success = mongoc_collection_find_and_modify_with_opts (
+ collection , & query , opts , & reply , & error );
+
+ if ( success ) {
+ char * str ;
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ } else {
+ fprintf (
+ stderr , "Got error: \" %s \" on line %d \n " , error . message , __LINE__ );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( update );
+ bson_destroy ( & query );
+ mongoc_find_and_modify_opts_destroy ( opts );
+}
+
+
+
+Outputs:
+{
+ "lastErrorObject" : { "updatedExisting" : true , "n" : 1 },
+ "value" : {
+ "_id" : { "$oid" : "56562a99d13e6d86239c7b00" },
+ "age" : 35 ,
+ "firstname" : "Zlatan" ,
+ "goals" : 342 ,
+ "lastname" : "Ibrahimovic" ,
+ "profession" : "Football player" ,
+ "position" : "striker"
+ },
+ "ok" : 1
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_find_and_modify_opts_t.html b/libmongoc/1.23.4/mongoc_find_and_modify_opts_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..1b75b4d5a177f5f79608abbc76ab27ae958f1e30
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_find_and_modify_opts_t.html
@@ -0,0 +1,698 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_find_and_modify_opts_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_find_and_modify_opts_t
+find_and_modify abstraction
+
+Synopsis
+mongoc_find_and_modify_opts_t is a builder interface to construct a find_and_modify command.
+It was created to be able to accommodate new arguments to the MongoDB find_and_modify command.
+As of MongoDB 3.2, the mongoc_write_concern_t specified on the mongoc_collection_t will be used, if any.
+
+
+Example
+
+
flags.c
+
void
+fam_flags ( mongoc_collection_t * collection )
+{
+ mongoc_find_and_modify_opts_t * opts ;
+ bson_t reply ;
+ bson_error_t error ;
+ bson_t query = BSON_INITIALIZER ;
+ bson_t * update ;
+ bool success ;
+
+
+ /* Find Zlatan Ibrahimovic, the striker */
+ BSON_APPEND_UTF8 ( & query , "firstname" , "Zlatan" );
+ BSON_APPEND_UTF8 ( & query , "lastname" , "Ibrahimovic" );
+ BSON_APPEND_UTF8 ( & query , "profession" , "Football player" );
+ BSON_APPEND_INT32 ( & query , "age" , 34 );
+ BSON_APPEND_INT32 (
+ & query , "goals" , ( 16 + 35 + 23 + 57 + 16 + 14 + 28 + 84 ) + ( 1 + 6 + 62 ));
+
+ /* Add his football position */
+ update = BCON_NEW ( "$set" , "{" , "position" , BCON_UTF8 ( "striker" ), "}" );
+
+ opts = mongoc_find_and_modify_opts_new ();
+
+ mongoc_find_and_modify_opts_set_update ( opts , update );
+
+ /* Create the document if it didn't exist, and return the updated document */
+ mongoc_find_and_modify_opts_set_flags (
+ opts , MONGOC_FIND_AND_MODIFY_UPSERT | MONGOC_FIND_AND_MODIFY_RETURN_NEW );
+
+ success = mongoc_collection_find_and_modify_with_opts (
+ collection , & query , opts , & reply , & error );
+
+ if ( success ) {
+ char * str ;
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ } else {
+ fprintf (
+ stderr , "Got error: \" %s \" on line %d \n " , error . message , __LINE__ );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( update );
+ bson_destroy ( & query );
+ mongoc_find_and_modify_opts_destroy ( opts );
+}
+
+
+
+
+
bypass.c
+
void
+fam_bypass ( mongoc_collection_t * collection )
+{
+ mongoc_find_and_modify_opts_t * opts ;
+ bson_t reply ;
+ bson_t * update ;
+ bson_error_t error ;
+ bson_t query = BSON_INITIALIZER ;
+ bool success ;
+
+
+ /* Find Zlatan Ibrahimovic, the striker */
+ BSON_APPEND_UTF8 ( & query , "firstname" , "Zlatan" );
+ BSON_APPEND_UTF8 ( & query , "lastname" , "Ibrahimovic" );
+ BSON_APPEND_UTF8 ( & query , "profession" , "Football player" );
+
+ /* Bump his age */
+ update = BCON_NEW ( "$inc" , "{" , "age" , BCON_INT32 ( 1 ), "}" );
+
+ opts = mongoc_find_and_modify_opts_new ();
+ mongoc_find_and_modify_opts_set_update ( opts , update );
+ /* He can still play, even though he is pretty old. */
+ mongoc_find_and_modify_opts_set_bypass_document_validation ( opts , true );
+
+ success = mongoc_collection_find_and_modify_with_opts (
+ collection , & query , opts , & reply , & error );
+
+ if ( success ) {
+ char * str ;
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ } else {
+ fprintf (
+ stderr , "Got error: \" %s \" on line %d \n " , error . message , __LINE__ );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( update );
+ bson_destroy ( & query );
+ mongoc_find_and_modify_opts_destroy ( opts );
+}
+
+
+
+
+
update.c
+
void
+fam_update ( mongoc_collection_t * collection )
+{
+ mongoc_find_and_modify_opts_t * opts ;
+ bson_t * update ;
+ bson_t reply ;
+ bson_error_t error ;
+ bson_t query = BSON_INITIALIZER ;
+ bool success ;
+
+
+ /* Find Zlatan Ibrahimovic */
+ BSON_APPEND_UTF8 ( & query , "firstname" , "Zlatan" );
+ BSON_APPEND_UTF8 ( & query , "lastname" , "Ibrahimovic" );
+
+ /* Make him a book author */
+ update = BCON_NEW ( "$set" , "{" , "author" , BCON_BOOL ( true ), "}" );
+
+ opts = mongoc_find_and_modify_opts_new ();
+ /* Note that the document returned is the _previous_ version of the document
+ * To fetch the modified new version, use
+ * mongoc_find_and_modify_opts_set_flags (opts,
+ * MONGOC_FIND_AND_MODIFY_RETURN_NEW);
+ */
+ mongoc_find_and_modify_opts_set_update ( opts , update );
+
+ success = mongoc_collection_find_and_modify_with_opts (
+ collection , & query , opts , & reply , & error );
+
+ if ( success ) {
+ char * str ;
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ } else {
+ fprintf (
+ stderr , "Got error: \" %s \" on line %d \n " , error . message , __LINE__ );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( update );
+ bson_destroy ( & query );
+ mongoc_find_and_modify_opts_destroy ( opts );
+}
+
+
+
+
+
fields.c
+
void
+fam_fields ( mongoc_collection_t * collection )
+{
+ mongoc_find_and_modify_opts_t * opts ;
+ bson_t fields = BSON_INITIALIZER ;
+ bson_t * update ;
+ bson_t reply ;
+ bson_error_t error ;
+ bson_t query = BSON_INITIALIZER ;
+ bool success ;
+
+
+ /* Find Zlatan Ibrahimovic */
+ BSON_APPEND_UTF8 ( & query , "lastname" , "Ibrahimovic" );
+ BSON_APPEND_UTF8 ( & query , "firstname" , "Zlatan" );
+
+ /* Return his goal tally */
+ BSON_APPEND_INT32 ( & fields , "goals" , 1 );
+
+ /* Bump his goal tally */
+ update = BCON_NEW ( "$inc" , "{" , "goals" , BCON_INT32 ( 1 ), "}" );
+
+ opts = mongoc_find_and_modify_opts_new ();
+ mongoc_find_and_modify_opts_set_update ( opts , update );
+ mongoc_find_and_modify_opts_set_fields ( opts , & fields );
+ /* Return the new tally */
+ mongoc_find_and_modify_opts_set_flags ( opts ,
+ MONGOC_FIND_AND_MODIFY_RETURN_NEW );
+
+ success = mongoc_collection_find_and_modify_with_opts (
+ collection , & query , opts , & reply , & error );
+
+ if ( success ) {
+ char * str ;
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ } else {
+ fprintf (
+ stderr , "Got error: \" %s \" on line %d \n " , error . message , __LINE__ );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( update );
+ bson_destroy ( & fields );
+ bson_destroy ( & query );
+ mongoc_find_and_modify_opts_destroy ( opts );
+}
+
+
+
+
+
sort.c
+
void
+fam_sort ( mongoc_collection_t * collection )
+{
+ mongoc_find_and_modify_opts_t * opts ;
+ bson_t * update ;
+ bson_t sort = BSON_INITIALIZER ;
+ bson_t reply ;
+ bson_error_t error ;
+ bson_t query = BSON_INITIALIZER ;
+ bool success ;
+
+
+ /* Find all users with the lastname Ibrahimovic */
+ BSON_APPEND_UTF8 ( & query , "lastname" , "Ibrahimovic" );
+
+ /* Sort by age (descending) */
+ BSON_APPEND_INT32 ( & sort , "age" , -1 );
+
+ /* Bump his goal tally */
+ update = BCON_NEW ( "$set" , "{" , "oldest" , BCON_BOOL ( true ), "}" );
+
+ opts = mongoc_find_and_modify_opts_new ();
+ mongoc_find_and_modify_opts_set_update ( opts , update );
+ mongoc_find_and_modify_opts_set_sort ( opts , & sort );
+
+ success = mongoc_collection_find_and_modify_with_opts (
+ collection , & query , opts , & reply , & error );
+
+ if ( success ) {
+ char * str ;
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ } else {
+ fprintf (
+ stderr , "Got error: \" %s \" on line %d \n " , error . message , __LINE__ );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( update );
+ bson_destroy ( & sort );
+ bson_destroy ( & query );
+ mongoc_find_and_modify_opts_destroy ( opts );
+}
+
+
+
+
+
opts.c
+
void
+fam_opts ( mongoc_collection_t * collection )
+{
+ mongoc_find_and_modify_opts_t * opts ;
+ bson_t reply ;
+ bson_t * update ;
+ bson_error_t error ;
+ bson_t query = BSON_INITIALIZER ;
+ mongoc_write_concern_t * wc ;
+ bson_t extra = BSON_INITIALIZER ;
+ bool success ;
+
+
+ /* Find Zlatan Ibrahimovic, the striker */
+ BSON_APPEND_UTF8 ( & query , "firstname" , "Zlatan" );
+ BSON_APPEND_UTF8 ( & query , "lastname" , "Ibrahimovic" );
+ BSON_APPEND_UTF8 ( & query , "profession" , "Football player" );
+
+ /* Bump his age */
+ update = BCON_NEW ( "$inc" , "{" , "age" , BCON_INT32 ( 1 ), "}" );
+
+ opts = mongoc_find_and_modify_opts_new ();
+ mongoc_find_and_modify_opts_set_update ( opts , update );
+
+ /* Abort if the operation takes too long. */
+ mongoc_find_and_modify_opts_set_max_time_ms ( opts , 100 );
+
+ /* Set write concern w: 2 */
+ wc = mongoc_write_concern_new ();
+ mongoc_write_concern_set_w ( wc , 2 );
+ mongoc_write_concern_append ( wc , & extra );
+
+ /* Some future findAndModify option the driver doesn't support conveniently
+ */
+ BSON_APPEND_INT32 ( & extra , "futureOption" , 42 );
+ mongoc_find_and_modify_opts_append ( opts , & extra );
+
+ success = mongoc_collection_find_and_modify_with_opts (
+ collection , & query , opts , & reply , & error );
+
+ if ( success ) {
+ char * str ;
+
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ } else {
+ fprintf (
+ stderr , "Got error: \" %s \" on line %d \n " , error . message , __LINE__ );
+ }
+
+ bson_destroy ( & reply );
+ bson_destroy ( & extra );
+ bson_destroy ( update );
+ bson_destroy ( & query );
+ mongoc_write_concern_destroy ( wc );
+ mongoc_find_and_modify_opts_destroy ( opts );
+}
+
+
+
+
+
fam.c
+
int
+main ( void )
+{
+ mongoc_collection_t * collection ;
+ mongoc_database_t * database ;
+ mongoc_client_t * client ;
+ const char * uri_string =
+ "mongodb://localhost:27017/admin?appname=find-and-modify-opts-example" ;
+ mongoc_uri_t * uri ;
+ bson_error_t error ;
+ bson_t * options ;
+
+ mongoc_init ();
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+ database = mongoc_client_get_database ( client , "databaseName" );
+
+ options = BCON_NEW ( "validator" ,
+ "{" ,
+ "age" ,
+ "{" ,
+ "$lte" ,
+ BCON_INT32 ( 34 ),
+ "}" ,
+ "}" ,
+ "validationAction" ,
+ BCON_UTF8 ( "error" ),
+ "validationLevel" ,
+ BCON_UTF8 ( "moderate" ));
+
+ collection = mongoc_database_create_collection (
+ database , "collectionName" , options , & error );
+ if ( ! collection ) {
+ fprintf (
+ stderr , "Got error: \" %s \" on line %d \n " , error . message , __LINE__ );
+ return EXIT_FAILURE ;
+ }
+
+ fam_flags ( collection );
+ fam_bypass ( collection );
+ fam_update ( collection );
+ fam_fields ( collection );
+ fam_opts ( collection );
+ fam_sort ( collection );
+
+ mongoc_collection_drop ( collection , NULL );
+ bson_destroy ( options );
+ mongoc_uri_destroy ( uri );
+ mongoc_database_destroy ( database );
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+ return EXIT_SUCCESS ;
+}
+
+
+
+Outputs:
+{
+ "lastErrorObject" : {
+ "updatedExisting" : false ,
+ "n" : 1 ,
+ "upserted" : {
+ "$oid" : "56562a99d13e6d86239c7b00"
+ }
+ },
+ "value" : {
+ "_id" : {
+ "$oid" : "56562a99d13e6d86239c7b00"
+ },
+ "age" : 34 ,
+ "firstname" : "Zlatan" ,
+ "goals" : 342 ,
+ "lastname" : "Ibrahimovic" ,
+ "profession" : "Football player" ,
+ "position" : "striker"
+ },
+ "ok" : 1
+}
+{
+ "lastErrorObject" : {
+ "updatedExisting" : true ,
+ "n" : 1
+ },
+ "value" : {
+ "_id" : {
+ "$oid" : "56562a99d13e6d86239c7b00"
+ },
+ "age" : 34 ,
+ "firstname" : "Zlatan" ,
+ "goals" : 342 ,
+ "lastname" : "Ibrahimovic" ,
+ "profession" : "Football player" ,
+ "position" : "striker"
+ },
+ "ok" : 1
+}
+{
+ "lastErrorObject" : {
+ "updatedExisting" : true ,
+ "n" : 1
+ },
+ "value" : {
+ "_id" : {
+ "$oid" : "56562a99d13e6d86239c7b00"
+ },
+ "age" : 35 ,
+ "firstname" : "Zlatan" ,
+ "goals" : 342 ,
+ "lastname" : "Ibrahimovic" ,
+ "profession" : "Football player" ,
+ "position" : "striker"
+ },
+ "ok" : 1
+}
+{
+ "lastErrorObject" : {
+ "updatedExisting" : true ,
+ "n" : 1
+ },
+ "value" : {
+ "_id" : {
+ "$oid" : "56562a99d13e6d86239c7b00"
+ },
+ "goals" : 343
+ },
+ "ok" : 1
+}
+{
+ "lastErrorObject" : {
+ "updatedExisting" : true ,
+ "n" : 1
+ },
+ "value" : {
+ "_id" : {
+ "$oid" : "56562a99d13e6d86239c7b00"
+ },
+ "age" : 35 ,
+ "firstname" : "Zlatan" ,
+ "goals" : 343 ,
+ "lastname" : "Ibrahimovic" ,
+ "profession" : "Football player" ,
+ "position" : "striker" ,
+ "author" : true
+ },
+ "ok" : 1
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_get_major_version.html b/libmongoc/1.23.4/mongoc_get_major_version.html
new file mode 100644
index 0000000000000000000000000000000000000000..3c8f45cfa95c9b90c7930331061a791c07eaf09a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_get_major_version.html
@@ -0,0 +1,192 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_get_major_version() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_get_major_version()
+
+Synopsis
+int
+mongoc_get_major_version ( void );
+
+
+
+
+Returns
+The value of MONGOC_MAJOR_VERSION when libmongoc was compiled.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_get_micro_version.html b/libmongoc/1.23.4/mongoc_get_micro_version.html
new file mode 100644
index 0000000000000000000000000000000000000000..ed04de4c89a3c2900c143bd3270d04ab2982a4f4
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_get_micro_version.html
@@ -0,0 +1,192 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_get_micro_version() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_get_micro_version()
+
+Synopsis
+int
+mongoc_get_micro_version ( void );
+
+
+
+
+Returns
+The value of MONGOC_MICRO_VERSION when libmongoc was compiled.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_get_minor_version.html b/libmongoc/1.23.4/mongoc_get_minor_version.html
new file mode 100644
index 0000000000000000000000000000000000000000..982a363df7f87024495a0217ed1e81fedb964843
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_get_minor_version.html
@@ -0,0 +1,192 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_get_minor_version() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_get_minor_version()
+
+Synopsis
+int
+mongoc_get_minor_version ( void );
+
+
+
+
+Returns
+The value of MONGOC_MINOR_VERSION when libmongoc was compiled.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_get_version.html b/libmongoc/1.23.4/mongoc_get_version.html
new file mode 100644
index 0000000000000000000000000000000000000000..ec25daca911f2f349df0137fb00f82df2575c929
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_get_version.html
@@ -0,0 +1,192 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_get_version() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_get_version()
+
+Synopsis
+const char *
+mongoc_get_version ( void );
+
+
+
+
+Returns
+A string representation of libmongoc’s version, formatted something like “1.2.3” or “1.2.3-pre”.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_bucket_abort_upload.html b/libmongoc/1.23.4/mongoc_gridfs_bucket_abort_upload.html
new file mode 100644
index 0000000000000000000000000000000000000000..cd25f1d86d13181eb8cc20aa6bde4cf16b268082
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_bucket_abort_upload.html
@@ -0,0 +1,211 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_bucket_abort_upload() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_bucket_abort_upload()
+
+Synopsis
+bool
+mongoc_gridfs_bucket_abort_upload ( mongoc_stream_t * stream );
+
+
+
+
+
+Description
+Aborts the upload of a GridFS upload stream.
+
+
+Returns
+True on success. False otherwise, and sets an error on stream .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_bucket_delete_by_id.html b/libmongoc/1.23.4/mongoc_gridfs_bucket_delete_by_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..281f8786275daa8db2d7adc041e78a805dc53a40
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_bucket_delete_by_id.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_bucket_delete_by_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_bucket_delete_by_id()
+
+Synopsis
+bool
+mongoc_gridfs_bucket_delete_by_id ( mongoc_gridfs_bucket_t * bucket ,
+ const bson_value_t * file_id ,
+ bson_error_t * error );
+
+
+
+
+
+Description
+Deletes a file and its contents from GridFS.
+
+
+Returns
+True if the operation succeeded. False otherwise, and sets error .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_bucket_destroy.html b/libmongoc/1.23.4/mongoc_gridfs_bucket_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..7a588b09aefc8a05df6692fc015861ad40c0321b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_bucket_destroy.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_bucket_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_bucket_destroy()
+
+Synopsis
+void
+mongoc_gridfs_bucket_destroy ( mongoc_gridfs_bucket_t * bucket );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_bucket_download_to_stream.html b/libmongoc/1.23.4/mongoc_gridfs_bucket_download_to_stream.html
new file mode 100644
index 0000000000000000000000000000000000000000..803ce329b4e00e627483450126d5714144fe8497
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_bucket_download_to_stream.html
@@ -0,0 +1,219 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_bucket_download_to_stream() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_bucket_download_to_stream()
+
+Synopsis
+bool
+mongoc_gridfs_bucket_download_to_stream ( mongoc_gridfs_bucket_t * bucket ,
+ const bson_value_t * file_id ,
+ mongoc_stream_t * destination ,
+ bson_error_t * error );
+
+
+
+
+
+Description
+Reads from the GridFS file and writes to the destination stream.
+Writes the full contents of the file to the destination stream.
+The destination stream is not closed after calling mongoc_gridfs_bucket_download_to_stream() ; call mongoc_stream_close() after.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+Returns
+True if the operation succeeded. False otherwise, and sets error .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_bucket_find.html b/libmongoc/1.23.4/mongoc_gridfs_bucket_find.html
new file mode 100644
index 0000000000000000000000000000000000000000..031d03e7c5deeca743b34419a5d131cb7c940e3b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_bucket_find.html
@@ -0,0 +1,209 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_bucket_find() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_bucket_find()
+
+Synopsis
+mongoc_cursor_t *
+mongoc_gridfs_bucket_find ( mongoc_gridfs_bucket_t * bucket ,
+ const bson_t * filter ,
+ const bson_t * opts ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+Finds file documents from the bucket’s files collection.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_bucket_new.html b/libmongoc/1.23.4/mongoc_gridfs_bucket_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..a8375a1c9c076612fd181abdd01ec74b872aa72c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_bucket_new.html
@@ -0,0 +1,215 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_bucket_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_bucket_new()
+
+Synopsis
+mongoc_gridfs_bucket_t *
+mongoc_gridfs_bucket_new ( mongoc_database_t * db ,
+ const bson_t * opts ,
+ const mongoc_read_prefs_t * read_prefs ,
+ bson_error_t * error ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_bucket_open_download_stream.html b/libmongoc/1.23.4/mongoc_gridfs_bucket_open_download_stream.html
new file mode 100644
index 0000000000000000000000000000000000000000..94bcb1c531c33b9f301782395e5ea4363bb1f6e6
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_bucket_open_download_stream.html
@@ -0,0 +1,213 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_bucket_open_download_stream() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_bucket_open_download_stream()
+
+Synopsis
+mongoc_stream_t *
+mongoc_gridfs_bucket_open_download_stream ( mongoc_gridfs_bucket_t * bucket ,
+ const bson_value_t * file_id ,
+ bson_error_t * error )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+Opens a stream for reading a file from GridFS.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_bucket_open_upload_stream.html b/libmongoc/1.23.4/mongoc_gridfs_bucket_open_upload_stream.html
new file mode 100644
index 0000000000000000000000000000000000000000..77453b1a157d4b9cda3a87d731338cf87a96cb9f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_bucket_open_upload_stream.html
@@ -0,0 +1,226 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_bucket_open_upload_stream() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_bucket_open_upload_stream()
+
+Synopsis
+mongoc_stream_t *
+mongoc_gridfs_bucket_open_upload_stream ( mongoc_gridfs_bucket_t * bucket ,
+ const char * filename ,
+ const bson_t * opts ,
+ bson_value_t * file_id ,
+ bson_error_t * error )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_bucket_open_upload_stream_with_id.html b/libmongoc/1.23.4/mongoc_gridfs_bucket_open_upload_stream_with_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..100cc573895e360f8c637d9067fbd03b3629778b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_bucket_open_upload_stream_with_id.html
@@ -0,0 +1,226 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_bucket_open_upload_stream_with_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_bucket_open_upload_stream_with_id()
+
+Synopsis
+mongoc_stream_t *
+mongoc_gridfs_bucket_open_upload_stream_with_id ( mongoc_gridfs_bucket_t * bucket ,
+ const bson_value_t * file_id ,
+ const char * filename ,
+ const bson_t * opts ,
+ bson_error_t * error )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_bucket_stream_error.html b/libmongoc/1.23.4/mongoc_gridfs_bucket_stream_error.html
new file mode 100644
index 0000000000000000000000000000000000000000..a018319fda3671d31989499f0f164901229c3153
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_bucket_stream_error.html
@@ -0,0 +1,216 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_bucket_stream_error() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_bucket_stream_error()
+
+Synopsis
+bool
+mongoc_gridfs_bucket_stream_error ( mongoc_stream_t * stream ,
+ bson_error_t * error );
+
+
+
+
+
+Description
+Retrieves an error for a GridFS stream if one exists.
+
+
+Returns
+True if an error occurred on the stream and sets error . False otherwise.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_bucket_t.html b/libmongoc/1.23.4/mongoc_gridfs_bucket_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..6f71056a3655f9a4b2039e494a89b184eaed97cf
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_bucket_t.html
@@ -0,0 +1,330 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_bucket_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_bucket_t
+
+Synopsis
+#include <mongoc/mongoc.h>
+
+typedef struct _mongoc_gridfs_bucket_t mongoc_gridfs_bucket_t ;
+
+
+
+
+
+
+
+Example
+
+
example-gridfs-bucket.c
+
#include <stdio.h>
+#include <stdlib.h>
+
+#include <mongoc/mongoc.h>
+
+int
+main ( int argc , char * argv [])
+{
+ const char * uri_string =
+ "mongodb://localhost:27017/?appname=new-gridfs-example" ;
+ mongoc_client_t * client ;
+ mongoc_database_t * db ;
+ mongoc_stream_t * file_stream ;
+ mongoc_gridfs_bucket_t * bucket ;
+ mongoc_cursor_t * cursor ;
+ bson_t filter ;
+ bool res ;
+ bson_value_t file_id ;
+ bson_error_t error ;
+ const bson_t * doc ;
+ char * str ;
+ mongoc_init ();
+
+ if ( argc != 3 ) {
+ fprintf ( stderr , "usage: %s SOURCE_FILE_PATH FILE_COPY_PATH \n " , argv [ 0 ]);
+ return EXIT_FAILURE ;
+ }
+
+ /* 1. Make a bucket. */
+ client = mongoc_client_new ( uri_string );
+ db = mongoc_client_get_database ( client , "test" );
+ bucket = mongoc_gridfs_bucket_new ( db , NULL , NULL , & error );
+ if ( ! bucket ) {
+ printf ( "Error creating gridfs bucket: %s \n " , error . message );
+ return EXIT_FAILURE ;
+ }
+
+ /* 2. Insert a file. */
+ file_stream = mongoc_stream_file_new_for_path ( argv [ 1 ], O_RDONLY , 0 );
+ res = mongoc_gridfs_bucket_upload_from_stream (
+ bucket , "my-file" , file_stream , NULL , & file_id , & error );
+ if ( ! res ) {
+ printf ( "Error uploading file: %s \n " , error . message );
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_stream_close ( file_stream );
+ mongoc_stream_destroy ( file_stream );
+
+ /* 3. Download the file in GridFS to a local file. */
+ file_stream = mongoc_stream_file_new_for_path ( argv [ 2 ], O_CREAT | O_RDWR , 0 );
+ if ( ! file_stream ) {
+ perror ( "Error opening file stream" );
+ return EXIT_FAILURE ;
+ }
+
+ res = mongoc_gridfs_bucket_download_to_stream (
+ bucket , & file_id , file_stream , & error );
+ if ( ! res ) {
+ printf ( "Error downloading file to stream: %s \n " , error . message );
+ return EXIT_FAILURE ;
+ }
+ mongoc_stream_close ( file_stream );
+ mongoc_stream_destroy ( file_stream );
+
+ /* 4. List what files are available in GridFS. */
+ bson_init ( & filter );
+ cursor = mongoc_gridfs_bucket_find ( bucket , & filter , NULL );
+
+ while ( mongoc_cursor_next ( cursor , & doc )) {
+ str = bson_as_canonical_extended_json ( doc , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ }
+
+ /* 5. Delete the file that we added. */
+ res = mongoc_gridfs_bucket_delete_by_id ( bucket , & file_id , & error );
+ if ( ! res ) {
+ printf ( "Error deleting the file: %s \n " , error . message );
+ return EXIT_FAILURE ;
+ }
+
+ /* 6. Cleanup. */
+ mongoc_stream_close ( file_stream );
+ mongoc_stream_destroy ( file_stream );
+ mongoc_cursor_destroy ( cursor );
+ bson_destroy ( & filter );
+ mongoc_gridfs_bucket_destroy ( bucket );
+ mongoc_database_destroy ( db );
+ mongoc_client_destroy ( client );
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_bucket_upload_from_stream.html b/libmongoc/1.23.4/mongoc_gridfs_bucket_upload_from_stream.html
new file mode 100644
index 0000000000000000000000000000000000000000..2bdd92672d868ca02b7aab04aa04d4023210acad
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_bucket_upload_from_stream.html
@@ -0,0 +1,226 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_bucket_upload_from_stream() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_bucket_upload_from_stream()
+
+Synopsis
+bool
+mongoc_gridfs_bucket_upload_from_stream ( mongoc_gridfs_bucket_t * bucket ,
+ const char * filename ,
+ mongoc_stream_t * source ,
+ const bson_t * opts ,
+ bson_value_t * file_id ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+
+Returns
+True if the operation succeeded. False otherwise and sets error .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_bucket_upload_from_stream_with_id.html b/libmongoc/1.23.4/mongoc_gridfs_bucket_upload_from_stream_with_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..a423a0d70ba50b1dcffc3eb568485b1ec75761c3
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_bucket_upload_from_stream_with_id.html
@@ -0,0 +1,226 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_bucket_upload_from_stream_with_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_bucket_upload_from_stream_with_id()
+
+Synopsis
+bool
+mongoc_gridfs_bucket_upload_from_stream_with_id ( mongoc_gridfs_bucket_t * bucket ,
+ const bson_value_t * file_id ,
+ const char * filename ,
+ mongoc_stream_t * source ,
+ const bson_t * opts ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+opts may be NULL or a BSON document with additional command options:
+
+
+
+
+Returns
+True if the operation succeeded. False otherwise and sets error .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_create_file.html b/libmongoc/1.23.4/mongoc_gridfs_create_file.html
new file mode 100644
index 0000000000000000000000000000000000000000..055afcabebb632ea6df4f8043569c2ae930be427
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_create_file.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_create_file() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_create_file()
+
+Synopsis
+mongoc_gridfs_file_t *
+mongoc_gridfs_create_file ( mongoc_gridfs_t * gridfs ,
+ mongoc_gridfs_file_opt_t * opt )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_create_file_from_stream.html b/libmongoc/1.23.4/mongoc_gridfs_create_file_from_stream.html
new file mode 100644
index 0000000000000000000000000000000000000000..f899541db0b7a054540783b35e46792678b654de
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_create_file_from_stream.html
@@ -0,0 +1,208 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_create_file_from_stream() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_create_file_from_stream()
+
+Synopsis
+mongoc_gridfs_file_t *
+mongoc_gridfs_create_file_from_stream ( mongoc_gridfs_t * gridfs ,
+ mongoc_stream_t * stream ,
+ mongoc_gridfs_file_opt_t * opt )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+This function shall create a new mongoc_gridfs_file_t and fill it with the contents of stream . Note that this function will read from stream until End of File, making it best suited for file-backed streams.
+
+
+Returns
+A newly allocated mongoc_gridfs_file_t that should be freed with mongoc_gridfs_file_destroy() when no longer in use.
+Returns NULL and logs an error message if there is a network or server error writing data to the MongoDB server.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_destroy.html b/libmongoc/1.23.4/mongoc_gridfs_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..2f5e3fc3449f81f8746f24be512bcac8eb19601d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_destroy.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_destroy()
+
+Synopsis
+void
+mongoc_gridfs_destroy ( mongoc_gridfs_t * gridfs );
+
+
+
+
+
+Description
+This function shall destroy the gridfs structure referenced by gridfs and any resources associated with the gridfs. Does nothing if gridfs is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_drop.html b/libmongoc/1.23.4/mongoc_gridfs_drop.html
new file mode 100644
index 0000000000000000000000000000000000000000..a13087dd20e1140bd83cc47b3fb39a839bd92b36
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_drop.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_drop() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_drop()
+
+Synopsis
+bool
+mongoc_gridfs_drop ( mongoc_gridfs_t * gridfs , bson_error_t * error );
+
+
+
+
+
+Description
+Requests that an entire GridFS be dropped, including all files associated with it.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_destroy.html b/libmongoc/1.23.4/mongoc_gridfs_file_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..60fdcd50286df27722ae440fd748b9548fe9776b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_destroy.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_destroy()
+
+Synopsis
+void
+mongoc_gridfs_file_destroy ( mongoc_gridfs_file_t * file );
+
+
+
+
+
+Description
+Destroys the mongoc_gridfs_file_t instance and any resources associated with it. Does nothing if file is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_error.html b/libmongoc/1.23.4/mongoc_gridfs_file_error.html
new file mode 100644
index 0000000000000000000000000000000000000000..0f354d73dc9bd7b8b1c9969b90bd1a15945bda16
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_error.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_error() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_error()
+
+Synopsis
+bool
+mongoc_gridfs_file_error ( mongoc_gridfs_file_t * file , bson_error_t * error );
+
+
+
+
+
+Description
+This function checks to see if there has been an error associated with the last operation upon file .
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+Returns false if there has been no registered error, otherwise true and error is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_get_aliases.html b/libmongoc/1.23.4/mongoc_gridfs_file_get_aliases.html
new file mode 100644
index 0000000000000000000000000000000000000000..ee839fdc95254f7627b3a643406baceeb3c7a89a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_get_aliases.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_get_aliases() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_get_aliases()
+
+Synopsis
+const bson_t *
+mongoc_gridfs_file_get_aliases ( mongoc_gridfs_file_t * file );
+
+
+
+
+
+Description
+Fetches the aliases associated with a gridfs file.
+
+
+Returns
+Returns a bson_t that should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_get_chunk_size.html b/libmongoc/1.23.4/mongoc_gridfs_file_get_chunk_size.html
new file mode 100644
index 0000000000000000000000000000000000000000..5e4fe325914d4739356407e7e9682beafb12bde5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_get_chunk_size.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_get_chunk_size() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_get_chunk_size()
+
+Synopsis
+int32_t
+mongoc_gridfs_file_get_chunk_size ( mongoc_gridfs_file_t * file );
+
+
+
+
+
+Description
+Fetches the chunk size used with the underlying gridfs file.
+
+
+Returns
+A signed 32-bit integer.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_get_content_type.html b/libmongoc/1.23.4/mongoc_gridfs_file_get_content_type.html
new file mode 100644
index 0000000000000000000000000000000000000000..0c5b46be71b0ab68782d8d717c1d2e981dd26126
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_get_content_type.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_get_content_type() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_get_content_type()
+
+Synopsis
+const char *
+mongoc_gridfs_file_get_content_type ( mongoc_gridfs_file_t * file );
+
+
+
+
+
+Description
+Fetches the content type specified for the underlying file.
+
+
+Returns
+Returns a string which should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_get_filename.html b/libmongoc/1.23.4/mongoc_gridfs_file_get_filename.html
new file mode 100644
index 0000000000000000000000000000000000000000..c9bd0056cc1cc9651aa52de3fd0f0a2e14161d07
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_get_filename.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_get_filename() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_get_filename()
+
+Synopsis
+const char *
+mongoc_gridfs_file_get_filename ( mongoc_gridfs_file_t * file );
+
+
+
+
+
+Description
+Fetches the filename for the given gridfs file.
+
+
+Returns
+A string which should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_get_id.html b/libmongoc/1.23.4/mongoc_gridfs_file_get_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..b0c7afb1571b7bac549f8c66ade0c30b18d19b86
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_get_id.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_get_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_get_id()
+
+Synopsis
+const bson_value_t *
+mongoc_gridfs_file_get_id ( mongoc_gridfs_file_t * file );
+
+
+
+
+
+Description
+Fetches the id of a gridfs file.
+The C Driver always uses an ObjectId for _id , but files created by other drivers may have any type of _id .
+
+
+Returns
+Returns a bson_value_t that should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_get_length.html b/libmongoc/1.23.4/mongoc_gridfs_file_get_length.html
new file mode 100644
index 0000000000000000000000000000000000000000..bc02a7b5ed66ba16be054d075aec9908a7a9837a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_get_length.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_get_length() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_get_length()
+
+Synopsis
+int64_t
+mongoc_gridfs_file_get_length ( mongoc_gridfs_file_t * file );
+
+
+
+
+
+Description
+Fetches the length of the gridfs file in bytes.
+
+
+Returns
+A 64-bit signed integer.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_get_md5.html b/libmongoc/1.23.4/mongoc_gridfs_file_get_md5.html
new file mode 100644
index 0000000000000000000000000000000000000000..091816b2e09ceb149af24b6444daba5eaa82744a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_get_md5.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_get_md5() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_get_md5()
+
+Synopsis
+const char *
+mongoc_gridfs_file_get_md5 ( mongoc_gridfs_file_t * file );
+
+
+
+
+
+Description
+Fetches the pre-computed MD5 for the underlying gridfs file.
+
+
+Returns
+Returns a string that should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_get_metadata.html b/libmongoc/1.23.4/mongoc_gridfs_file_get_metadata.html
new file mode 100644
index 0000000000000000000000000000000000000000..528c263712df28ef2fa9cfb09890f0d91b607791
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_get_metadata.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_get_metadata() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_get_upload_date.html b/libmongoc/1.23.4/mongoc_gridfs_file_get_upload_date.html
new file mode 100644
index 0000000000000000000000000000000000000000..4a8bfb8d2c91fd8c21bcd877fc38ee95834a107c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_get_upload_date.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_get_upload_date() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_get_upload_date()
+
+Synopsis
+int64_t
+mongoc_gridfs_file_get_upload_date ( mongoc_gridfs_file_t * file );
+
+
+
+
+
+Description
+Fetches the specified upload date of the gridfs file in milliseconds since the UNIX epoch.
+
+
+Returns
+A signed int64 with the upload date in milliseconds since the UNIX epoch.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_list_destroy.html b/libmongoc/1.23.4/mongoc_gridfs_file_list_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..3bfecfecd123b58340d044ee4cdb19b4bc73ecc4
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_list_destroy.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_list_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_list_destroy()
+
+Synopsis
+void
+mongoc_gridfs_file_list_destroy ( mongoc_gridfs_file_list_t * list );
+
+
+
+
+
+Description
+Frees a mongoc_gridfs_file_list_t and releases any associated resources. Does nothing if list is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_list_error.html b/libmongoc/1.23.4/mongoc_gridfs_file_list_error.html
new file mode 100644
index 0000000000000000000000000000000000000000..b1e91bae139ed71634c72123d875aaa4433ae493
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_list_error.html
@@ -0,0 +1,208 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_list_error() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_list_error()
+
+Synopsis
+bool
+mongoc_gridfs_file_list_error ( mongoc_gridfs_file_list_t * list ,
+ bson_error_t * error );
+
+
+
+
+
+Description
+Fetches any error that has occurred while trying to retrieve the file list.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+false if no error has been registered, otherwise true and error is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_list_next.html b/libmongoc/1.23.4/mongoc_gridfs_file_list_next.html
new file mode 100644
index 0000000000000000000000000000000000000000..08589f6757f062e34e80607f538e82be82cb5abd
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_list_next.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_list_next() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_list_next()
+
+Synopsis
+mongoc_gridfs_file_t *
+mongoc_gridfs_file_list_next ( mongoc_gridfs_file_list_t * list )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+This function shall iterate the underlying gridfs file list, returning the next file each iteration. This is a blocking function.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_list_t.html b/libmongoc/1.23.4/mongoc_gridfs_file_list_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..a60cf70578cde745823b291bfbf8ccae5dbe91ad
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_list_t.html
@@ -0,0 +1,219 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_list_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_list_t
+
+Synopsis
+#include <mongoc/mongoc.h>
+
+typedef struct _mongoc_gridfs_file_list_t mongoc_gridfs_file_list_t ;
+
+
+
+
+
+Example
+mongoc_gridfs_file_list_t * list ;
+mongoc_gridfs_file_t * file ;
+
+list = mongoc_gridfs_find ( gridfs , query );
+
+while (( file = mongoc_gridfs_file_list_next ( list ))) {
+ do_something ( file );
+
+ mongoc_gridfs_file_destroy ( file );
+}
+
+mongoc_gridfs_file_list_destroy ( list );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_opt_t.html b/libmongoc/1.23.4/mongoc_gridfs_file_opt_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..5f3bc8438e64d60cf575bd48cd07d91c805db8b6
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_opt_t.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_opt_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_opt_t
+
+Synopsis
+typedef struct {
+ const char * md5 ;
+ const char * filename ;
+ const char * content_type ;
+ const bson_t * aliases ;
+ const bson_t * metadata ;
+ uint32_t chunk_size ;
+} mongoc_gridfs_file_opt_t ;
+
+
+
+
+Description
+This structure contains options that can be set on a mongoc_gridfs_file_t . It can be used by various functions when creating a new gridfs file.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_readv.html b/libmongoc/1.23.4/mongoc_gridfs_file_readv.html
new file mode 100644
index 0000000000000000000000000000000000000000..f4e4b0cf7a1f47006c59afd280418bf0b7f16660
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_readv.html
@@ -0,0 +1,211 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_readv() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_readv()
+
+Synopsis
+ssize_t
+mongoc_gridfs_file_readv ( mongoc_gridfs_file_t * file ,
+ mongoc_iovec_t * iov ,
+ size_t iovcnt ,
+ size_t min_bytes ,
+ uint32_t timeout_msec );
+
+
+
+
+Parameters
+
+file : A mongoc_gridfs_file_t .
+iov : An array of mongoc_iovec_t .
+iovcnt : The number of elements in iov .
+min_bytes : The minimum number of bytes that must be read or an error will be synthesized.
+timeout_msec : Unused.
+
+
+
+Description
+This function performs a scattered read from file , potentially blocking to read from the MongoDB server.
+The timeout_msec parameter is unused.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_remove.html b/libmongoc/1.23.4/mongoc_gridfs_file_remove.html
new file mode 100644
index 0000000000000000000000000000000000000000..e29ff51c053a95db3f08ae332add89debaa00c5c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_remove.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_remove() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_remove()
+
+Synopsis
+bool
+mongoc_gridfs_file_remove ( mongoc_gridfs_file_t * file , bson_error_t * error );
+
+
+
+
+
+Description
+Removes file and its data chunks from the MongoDB server.
+
+
+Returns
+Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_save.html b/libmongoc/1.23.4/mongoc_gridfs_file_save.html
new file mode 100644
index 0000000000000000000000000000000000000000..b1cecd982f965ad5506e8d279bb780b98a3cd533
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_save.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_save() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_save()
+
+Synopsis
+bool
+mongoc_gridfs_file_save ( mongoc_gridfs_file_t * file );
+
+
+
+
+
+Description
+Saves modifications to file to the MongoDB server.
+If an error occurred, false is returned and the error can be retrieved with mongoc_gridfs_file_error() .
+Modifying GridFS files is NOT thread-safe. Only one thread or process can access a GridFS file while it is being modified.
+
+
+Returns
+Returns true if successful, otherwise false.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_seek.html b/libmongoc/1.23.4/mongoc_gridfs_file_seek.html
new file mode 100644
index 0000000000000000000000000000000000000000..8b4242c3b427c5af4f65607c7cc6817878e5bf49
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_seek.html
@@ -0,0 +1,231 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_seek() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_seek()
+
+Synopsis
+int
+mongoc_gridfs_file_seek ( mongoc_gridfs_file_t * file , int64_t delta , int whence );
+
+
+
+
+Parameters
+
+file : A mongoc_gridfs_file_t .
+delta : The amount to move the file position. May be positive or negative.
+whence : One of SEEK_SET, SEEK_CUR or SEEK_END.
+
+
+
+Description
+Adjust the file position pointer in the given file by delta , starting from the position whence . The whence argument is interpreted as in fseek(2) :
+
+
+SEEK_SET
+Set the position relative to the start of the file.
+
+SEEK_CUR
+Move delta relative to the current file position.
+
+SEEK_END
+Move delta relative to the end of the file.
+
+
+
+On success, the file’s underlying position pointer is set appropriately. On failure, the file position is NOT changed and errno is set to indicate the error.
+
+
+Errors
+
+
+EINVAL
+whence is not one of SEEK_SET, SEEK_CUR or SEEK_END.
+
+EINVAL
+The resulting file position would be negative.
+
+
+
+
+
+Returns
+Returns 0 if successful; otherwise -1 and errno is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_set_aliases.html b/libmongoc/1.23.4/mongoc_gridfs_file_set_aliases.html
new file mode 100644
index 0000000000000000000000000000000000000000..4b20bd40fa5afd6a3abd958aad6aab23fe0c6a86
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_set_aliases.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_set_aliases() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_set_aliases()
+
+Synopsis
+void
+mongoc_gridfs_file_set_aliases ( mongoc_gridfs_file_t * file , const bson_t * bson );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_set_content_type.html b/libmongoc/1.23.4/mongoc_gridfs_file_set_content_type.html
new file mode 100644
index 0000000000000000000000000000000000000000..d70a3f2aa611471e8c5c72d10e18f9513af704e0
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_set_content_type.html
@@ -0,0 +1,201 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_set_content_type() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_set_content_type()
+
+Synopsis
+void
+mongoc_gridfs_file_set_content_type ( mongoc_gridfs_file_t * file ,
+ const char * content_type );
+
+
+
+
+
+Description
+Sets the content type for the gridfs file. This should be something like "text/plain" .
+You need to call mongoc_gridfs_file_save() to persist this change.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_set_filename.html b/libmongoc/1.23.4/mongoc_gridfs_file_set_filename.html
new file mode 100644
index 0000000000000000000000000000000000000000..3606a2cb308be14755ee87425ba1bd067285c40b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_set_filename.html
@@ -0,0 +1,201 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_set_filename() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_set_filename()
+
+Synopsis
+void
+mongoc_gridfs_file_set_filename ( mongoc_gridfs_file_t * file ,
+ const char * filename );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_set_id.html b/libmongoc/1.23.4/mongoc_gridfs_file_set_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..1b14dc596c19e763159ad53392f43e5a05e6c123
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_set_id.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_set_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_set_id()
+
+Synopsis
+bool
+mongoc_gridfs_file_set_id ( mongoc_gridfs_file_t * file ,
+ const bson_value_t * id ,
+ bson_error_t error );
+
+
+
+
+
+Description
+Sets the id of file to any BSON type.
+If an error occurred, false is returned.
+
+
+Returns
+Returns true on success. If any arguments are invalid, returns false and logs an error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_set_md5.html b/libmongoc/1.23.4/mongoc_gridfs_file_set_md5.html
new file mode 100644
index 0000000000000000000000000000000000000000..b4d74a578c959ce2eb613204cc3511ea12149f4e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_set_md5.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_set_md5() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_set_md5()
+
+Synopsis
+void
+mongoc_gridfs_file_set_md5 ( mongoc_gridfs_file_t * file , const char * md5 );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_set_metadata.html b/libmongoc/1.23.4/mongoc_gridfs_file_set_metadata.html
new file mode 100644
index 0000000000000000000000000000000000000000..a0e75f235d42d831bf6a20f0e5a869e5ae02c97a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_set_metadata.html
@@ -0,0 +1,201 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_set_metadata() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_t.html b/libmongoc/1.23.4/mongoc_gridfs_file_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..64208e071e334a05b8c39de4243bffe65b9b858c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_t.html
@@ -0,0 +1,239 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_t
+
+Synopsis
+typedef struct _mongoc_gridfs_file_t mongoc_gridfs_file_t ;
+
+
+
+
+Description
+This structure provides a MongoDB GridFS file abstraction. It provides several APIs.
+
+readv, writev, seek, and tell.
+General file metadata such as filename and length.
+GridFS metadata such as md5, filename, content_type, aliases, metadata, chunk_size, and upload_date.
+
+
+
+Thread Safety
+This structure is NOT thread-safe and should only be used from one thread at a time.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_tell.html b/libmongoc/1.23.4/mongoc_gridfs_file_tell.html
new file mode 100644
index 0000000000000000000000000000000000000000..7f38b93449aecb398eb7fa23864daf720639c197
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_tell.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_tell() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_tell()
+
+Synopsis
+uint64_t
+mongoc_gridfs_file_tell ( mongoc_gridfs_file_t * file );
+
+
+
+
+
+Description
+This function returns the current position indicator within file .
+
+
+Returns
+Returns a file position as an unsigned 64-bit integer.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_file_writev.html b/libmongoc/1.23.4/mongoc_gridfs_file_writev.html
new file mode 100644
index 0000000000000000000000000000000000000000..e38ed07c2847a3b719948fe70269bbcb1c1366d8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_file_writev.html
@@ -0,0 +1,210 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_file_writev() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_file_writev()
+
+Synopsis
+ssize_t
+mongoc_gridfs_file_writev ( mongoc_gridfs_file_t * file ,
+ const mongoc_iovec_t * iov ,
+ size_t iovcnt ,
+ uint32_t timeout_msec );
+
+
+
+
+
+Description
+Performs a gathered write to the underlying gridfs file.
+The timeout_msec parameter is unused.
+Modifying GridFS files is NOT thread-safe. Only one thread or process can access a GridFS file while it is being modified.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_find.html b/libmongoc/1.23.4/mongoc_gridfs_find.html
new file mode 100644
index 0000000000000000000000000000000000000000..aab0081d85c22868528d206a1d7fc6abdf91cd56
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_find.html
@@ -0,0 +1,212 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_find() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_find()
+
+
+Synopsis
+mongoc_gridfs_file_list_t *
+mongoc_gridfs_find ( mongoc_gridfs_t * gridfs ,
+ const bson_t * query ) BSON_GNUC_WARN_UNUSED_RESULT
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_gridfs_find_with_opts );
+
+
+
+
+
+Description
+Finds all gridfs files matching query . You can iterate the matched gridfs files with the resulting file list.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_find_one.html b/libmongoc/1.23.4/mongoc_gridfs_find_one.html
new file mode 100644
index 0000000000000000000000000000000000000000..646f7ff971aa1792210fabf01c1472f4792eb567
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_find_one.html
@@ -0,0 +1,218 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_find_one() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_find_one()
+
+
+Synopsis
+mongoc_gridfs_file_t *
+mongoc_gridfs_find_one ( mongoc_gridfs_t * gridfs ,
+ const bson_t * query ,
+ bson_error_t * error ) BSON_GNUC_WARN_UNUSED_RESULT
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_gridfs_find_one_with_opts );
+
+
+
+
+
+Description
+This function shall execute a query on the underlying gridfs implementation. The first file matching query will be returned. If there is an error, NULL is returned and error is filled out; if there is no error but no matching file is found, NULL is returned and the error code and domain are 0.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_find_one_by_filename.html b/libmongoc/1.23.4/mongoc_gridfs_find_one_by_filename.html
new file mode 100644
index 0000000000000000000000000000000000000000..e5f8852a84c1addf10bcaa22e01275c47340c53e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_find_one_by_filename.html
@@ -0,0 +1,214 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_find_one_by_filename() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_find_one_by_filename()
+
+Synopsis
+mongoc_gridfs_file_t *
+mongoc_gridfs_find_one_by_filename ( mongoc_gridfs_t * gridfs ,
+ const char * filename ,
+ bson_error_t * error )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Parameters
+
+gridfs : A mongoc_gridfs_t .
+filename : A UTF-8 encoded string containing the filename.
+error : An optional location for a bson_error_t or NULL .
+
+
+
+Description
+Finds the first file matching the filename specified. If there is an error, NULL is returned and error is filled out; if there is no error but no matching file is found, NULL is returned and the error code and domain are 0.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_find_one_with_opts.html b/libmongoc/1.23.4/mongoc_gridfs_find_one_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..2ed9c442740337a7557f4d563ef0f5436b005af9
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_find_one_with_opts.html
@@ -0,0 +1,217 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_find_one_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_find_one_with_opts()
+
+Synopsis
+mongoc_gridfs_file_t *
+mongoc_gridfs_find_one_with_opts ( mongoc_gridfs_t * gridfs ,
+ const bson_t * filter ,
+ const bson_t * opts ,
+ bson_error_t * error )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Parameters
+
+gridfs : A mongoc_gridfs_t .
+filter : A bson_t containing the query to execute.
+opts : A bson_t query options, including sort order and which fields to return. Can be NULL .
+error : An optional location for a bson_error_t or NULL .
+
+
+
+Description
+Find the first GridFS file matching filter . If there is an error, NULL is returned and error is filled out; if there is no error but no matching file is found, NULL is returned and the error code and domain are 0.
+See mongoc_collection_find_with_opts() for a description of the filter and opts parameters.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_find_with_opts.html b/libmongoc/1.23.4/mongoc_gridfs_find_with_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..e503ef0ec17a839f7390bfce3f307578f7c98e3d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_find_with_opts.html
@@ -0,0 +1,210 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_find_with_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_find_with_opts()
+
+Synopsis
+mongoc_gridfs_file_list_t *
+mongoc_gridfs_find_with_opts ( mongoc_gridfs_t * gridfs ,
+ const bson_t * filter ,
+ const bson_t * opts ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Parameters
+
+gridfs : A mongoc_gridfs_t .
+filter : A bson_t containing the query to execute.
+opts : A bson_t query options, including sort order and which fields to return. Can be NULL .
+
+
+
+Description
+Finds all gridfs files matching filter . You can iterate the matched gridfs files with the resulting file list.
+See mongoc_collection_find_with_opts() for a description of the filter and opts parameters.
+This function is considered a retryable read operation.
+Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once.
+If retryreads is false in the URI (see mongoc_uri_t ) the retry behavior does not apply.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_get_chunks.html b/libmongoc/1.23.4/mongoc_gridfs_get_chunks.html
new file mode 100644
index 0000000000000000000000000000000000000000..24bdc43fb37ae8b745252c17d117079822c67c62
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_get_chunks.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_get_chunks() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_get_chunks()
+
+Synopsis
+mongoc_collection_t *
+mongoc_gridfs_get_chunks ( mongoc_gridfs_t * gridfs );
+
+
+
+
+
+Description
+Returns a mongoc_collection_t that contains the chunks for files. This instance is owned by the mongoc_gridfs_t instance and should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_get_files.html b/libmongoc/1.23.4/mongoc_gridfs_get_files.html
new file mode 100644
index 0000000000000000000000000000000000000000..1c976b382d5819d94c7ffc8ffd6b3e698068c78a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_get_files.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_get_files() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_get_files()
+
+Synopsis
+mongoc_collection_t *
+mongoc_gridfs_get_files ( mongoc_gridfs_t * gridfs );
+
+
+
+
+
+Description
+Retrieves the mongoc_collection_t containing the file metadata for GridFS. This instance is owned by the mongoc_gridfs_t and should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_remove_by_filename.html b/libmongoc/1.23.4/mongoc_gridfs_remove_by_filename.html
new file mode 100644
index 0000000000000000000000000000000000000000..0993bd02bf130d018b4ce93aea7e9060fdbac2a5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_remove_by_filename.html
@@ -0,0 +1,210 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_remove_by_filename() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_remove_by_filename()
+
+Synopsis
+bool
+mongoc_gridfs_remove_by_filename ( mongoc_gridfs_t * gridfs ,
+ const char * filename ,
+ bson_error_t * error );
+
+
+
+
+Parameters
+
+gridfs : A mongoc_gridfs_t .
+filename : A UTF-8 encoded string containing the filename.
+error : An optional location for a bson_error_t or NULL .
+
+
+
+Description
+Removes all files matching filename and their data chunks from the MongoDB server.
+
+
+Returns
+Returns true if successful, including when no files match. Returns false and sets error if there are invalid arguments or a server or network error.
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_gridfs_t.html b/libmongoc/1.23.4/mongoc_gridfs_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..d3c9443b3717d4e81840ba8a5289abe73eea4261
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_gridfs_t.html
@@ -0,0 +1,400 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_gridfs_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_gridfs_t
+
+
+Synopsis
+#include <mongoc/mongoc.h>
+
+typedef struct _mongoc_gridfs_t mongoc_gridfs_t ;
+
+
+
+
+Description
+mongoc_gridfs_t provides a MongoDB gridfs implementation. The system as a whole is made up of gridfs objects, which contain gridfs_files and gridfs_file_lists . Essentially, a basic file system API.
+There are extensive caveats about the kind of use cases gridfs is practical for. In particular, any writing after initial file creation is likely to both break any concurrent readers and be quite expensive. That said, this implementation does allow for arbitrary writes to existing gridfs object, just use them with caution.
+mongoc_gridfs also integrates tightly with the mongoc_stream_t abstraction, which provides some convenient wrapping for file creation and reading/writing. It can be used without, but its worth looking to see if your problem can fit that model.
+
+
Warning
+
mongoc_gridfs_t does not support read preferences. In a replica set, GridFS queries are always routed to the primary.
+
+
+
+Thread Safety
+mongoc_gridfs_t is NOT thread-safe and should only be used in the same thread as the owning mongoc_client_t .
+
+
+
+Example
+
+
example-gridfs.c
+
#include <assert.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <fcntl.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_gridfs_t * gridfs ;
+ mongoc_gridfs_file_t * file ;
+ mongoc_gridfs_file_list_t * list ;
+ mongoc_gridfs_file_opt_t opt = { 0 };
+ mongoc_client_t * client ;
+ const char * uri_string = "mongodb://127.0.0.1:27017/?appname=gridfs-example" ;
+ mongoc_uri_t * uri ;
+ mongoc_stream_t * stream ;
+ bson_t filter ;
+ bson_t opts ;
+ bson_t child ;
+ bson_error_t error ;
+ ssize_t r ;
+ char buf [ 4096 ];
+ mongoc_iovec_t iov ;
+ const char * filename ;
+ const char * command ;
+ bson_value_t id ;
+
+ if ( argc < 2 ) {
+ fprintf ( stderr , "usage - %s command ... \n " , argv [ 0 ]);
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_init ();
+
+ iov . iov_base = ( void * ) buf ;
+ iov . iov_len = sizeof buf ;
+
+ /* connect to localhost client */
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ assert ( client );
+ mongoc_client_set_error_api ( client , 2 );
+
+ /* grab a gridfs handle in test prefixed by fs */
+ gridfs = mongoc_client_get_gridfs ( client , "test" , "fs" , & error );
+ assert ( gridfs );
+
+ command = argv [ 1 ];
+ filename = argv [ 2 ];
+
+ if ( strcmp ( command , "read" ) == 0 ) {
+ if ( argc != 3 ) {
+ fprintf ( stderr , "usage - %s read filename \n " , argv [ 0 ]);
+ return EXIT_FAILURE ;
+ }
+ file = mongoc_gridfs_find_one_by_filename ( gridfs , filename , & error );
+ assert ( file );
+
+ stream = mongoc_stream_gridfs_new ( file );
+ assert ( stream );
+
+ for (;;) {
+ r = mongoc_stream_readv ( stream , & iov , 1 , -1 , 0 );
+
+ assert ( r >= 0 );
+
+ if ( r == 0 ) {
+ break ;
+ }
+
+ if ( fwrite ( iov . iov_base , 1 , r , stdout ) != r ) {
+ MONGOC_ERROR ( "Failed to write to stdout. Exiting. \n " );
+ exit ( 1 );
+ }
+ }
+
+ mongoc_stream_destroy ( stream );
+ mongoc_gridfs_file_destroy ( file );
+ } else if ( strcmp ( command , "list" ) == 0 ) {
+ bson_init ( & filter );
+
+ bson_init ( & opts );
+ bson_append_document_begin ( & opts , "sort" , -1 , & child );
+ BSON_APPEND_INT32 ( & child , "filename" , 1 );
+ bson_append_document_end ( & opts , & child );
+
+ list = mongoc_gridfs_find_with_opts ( gridfs , & filter , & opts );
+
+ bson_destroy ( & filter );
+ bson_destroy ( & opts );
+
+ while (( file = mongoc_gridfs_file_list_next ( list ))) {
+ const char * name = mongoc_gridfs_file_get_filename ( file );
+ printf ( "%s \n " , name ? name : "?" );
+
+ mongoc_gridfs_file_destroy ( file );
+ }
+
+ mongoc_gridfs_file_list_destroy ( list );
+ } else if ( strcmp ( command , "write" ) == 0 ) {
+ if ( argc != 4 ) {
+ fprintf ( stderr , "usage - %s write filename input_file \n " , argv [ 0 ]);
+ return EXIT_FAILURE ;
+ }
+
+ stream = mongoc_stream_file_new_for_path ( argv [ 3 ], O_RDONLY , 0 );
+ assert ( stream );
+
+ opt . filename = filename ;
+
+ /* the driver generates a file_id for you */
+ file = mongoc_gridfs_create_file_from_stream ( gridfs , stream , & opt );
+ assert ( file );
+
+ id . value_type = BSON_TYPE_INT32 ;
+ id . value . v_int32 = 1 ;
+
+ /* optional: the following method specifies a file_id of any
+ BSON type */
+ if ( ! mongoc_gridfs_file_set_id ( file , & id , & error )) {
+ fprintf ( stderr , "%s \n " , error . message );
+ return EXIT_FAILURE ;
+ }
+
+ if ( ! mongoc_gridfs_file_save ( file )) {
+ mongoc_gridfs_file_error ( file , & error );
+ fprintf ( stderr , "Could not save: %s \n " , error . message );
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_gridfs_file_destroy ( file );
+ } else {
+ fprintf ( stderr , "Unknown command" );
+ return EXIT_FAILURE ;
+ }
+
+ mongoc_gridfs_destroy ( gridfs );
+ mongoc_uri_destroy ( uri );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_handshake_data_append.html b/libmongoc/1.23.4/mongoc_handshake_data_append.html
new file mode 100644
index 0000000000000000000000000000000000000000..c09ff7958a537943c7579d1cbe22b1303437f95e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_handshake_data_append.html
@@ -0,0 +1,252 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_handshake_data_append() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_handshake_data_append()
+
+Synopsis
+bool
+mongoc_handshake_data_append ( const char * driver_name ,
+ const char * driver_version ,
+ const char * platform );
+
+
+Appends the given strings to the handshake data for the underlying C Driver.
+
+
+Description
+This function is intended for use by drivers which wrap the C Driver.
+Calling this function will store the given strings as handshake data about
+the system and driver by appending them to the handshake data for the
+underlying C Driver. These values, along with other handshake data collected
+during mongoc_init will be sent to the server as part of the initial
+connection handshake in the “client” document. This function must not be
+called more than once, or after server monitoring begins. For a single-threaded
+mongoc_client_t , server monitoring begins on the first operation
+requiring a server. For a mongoc_client_pool_t , server monitoring
+begins on the first call to :symbol:`mongoc_client_pool_pop .
+The passed in strings are copied, and don’t have to remain valid after the
+call to mongoc_handshake_data_append() . The driver may store truncated
+versions of the passed in strings.
+
+
+
+Parameters
+
+driver_name : An optional string storing the name of the wrapping driver
+driver_version : An optional string storing the version of the wrapping driver.
+platform : An optional string storing any information about the current platform, for example configure options or compile flags.
+
+
+
+Returns
+true if the given fields are set successfully. Otherwise, it returns false and logs an error.
+The default handshake data the driver sends with “hello” looks something
+like:
+client : {
+ driver : {
+ name : "mongoc" ,
+ version : "1.5.0"
+ },
+ os : {...},
+ platform : "CC=gcc CFLAGS=-Wall -pedantic"
+}
+
+
+If we call
+mongoc_handshake_data_append() (“phongo”, “1.1.8”, “CC=clang / “)
+and it returns true, the driver sends handshake data like:
+client : {
+ driver : {
+ name : "mongoc / phongo" ,
+ version : "1.5.0 / 1.1.8"
+ },
+ os : {...},
+ platform : "CC=clang / gcc CFLAGS=-Wall -pedantic"
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_host_list_t.html b/libmongoc/1.23.4/mongoc_host_list_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..66110ff19f078194e830da269e8e6dae362d146f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_host_list_t.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_host_list_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_host_list_t
+
+Synopsis
+typedef struct {
+ mongoc_host_list_t * next ;
+ char host [ BSON_HOST_NAME_MAX + 1 ];
+ char host_and_port [ BSON_HOST_NAME_MAX + 7 ];
+ uint16_t port ;
+ int family ;
+ void * padding [ 4 ];
+} mongoc_host_list_t ;
+
+
+
+
+Description
+The host and port of a MongoDB server. Can be part of a linked list: for example the return value of mongoc_uri_get_hosts() when multiple hosts are provided in the MongoDB URI.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_index_opt_geo_get_default.html b/libmongoc/1.23.4/mongoc_index_opt_geo_get_default.html
new file mode 100644
index 0000000000000000000000000000000000000000..25b812fb44b48e91ae7350cf680e3d8b9d20965f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_index_opt_geo_get_default.html
@@ -0,0 +1,192 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_index_opt_geo_get_default() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_index_opt_geo_get_default()
+
+Synopsis
+const mongoc_index_opt_geo_t *
+mongoc_index_opt_geo_get_default ( void ) BSON_GNUC_PURE ;
+
+
+
+
+Returns
+Returns a pointer to the default GEO index creation options.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_index_opt_geo_init.html b/libmongoc/1.23.4/mongoc_index_opt_geo_init.html
new file mode 100644
index 0000000000000000000000000000000000000000..376cd24097f2a6ec514a42a89ddf0d47f705471b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_index_opt_geo_init.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_index_opt_geo_init() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_index_opt_geo_init()
+
+Synopsis
+void
+mongoc_index_opt_geo_init ( mongoc_index_opt_geo_t * opt );
+
+
+
+
+
+Description
+This function will initialize opt to the default values. It should be called before modifying any fields within the structure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_index_opt_geo_t.html b/libmongoc/1.23.4/mongoc_index_opt_geo_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..7f5708714f5aecbf889e51df451d36d69308161d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_index_opt_geo_t.html
@@ -0,0 +1,217 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_index_opt_geo_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_index_opt_geo_t
+
+Synopsis
+#include <mongoc/mongoc.h>
+
+typedef struct {
+ uint8_t twod_sphere_version ;
+ uint8_t twod_bits_precision ;
+ double twod_location_min ;
+ double twod_location_max ;
+ double haystack_bucket_size ;
+ uint8_t * padding [ 32 ];
+} mongoc_index_opt_geo_t ;
+
+
+
+
+Description
+This structure contains the options that may be used for tuning a GEO index.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_index_opt_get_default.html b/libmongoc/1.23.4/mongoc_index_opt_get_default.html
new file mode 100644
index 0000000000000000000000000000000000000000..3b4dd34729864b825d489b57676afc581124a58b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_index_opt_get_default.html
@@ -0,0 +1,192 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_index_opt_get_default() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_index_opt_get_default()
+
+Synopsis
+const mongoc_index_opt_t *
+mongoc_index_opt_get_default ( void ) BSON_GNUC_PURE ;
+
+
+
+
+Returns
+Returns a pointer to the default index creation options.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_index_opt_init.html b/libmongoc/1.23.4/mongoc_index_opt_init.html
new file mode 100644
index 0000000000000000000000000000000000000000..460679623876fa4778d4b8b4a0457eed5c0e344a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_index_opt_init.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_index_opt_init() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_index_opt_init()
+
+Synopsis
+void
+mongoc_index_opt_init ( mongoc_index_opt_t * opt );
+
+
+
+
+
+Description
+This function will initialize opt to the default values. It should be called before modifying any fields within the structure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_index_opt_t.html b/libmongoc/1.23.4/mongoc_index_opt_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..97a81998086803304c0b64752bf36e595cd44da9
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_index_opt_t.html
@@ -0,0 +1,265 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_index_opt_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_index_opt_t
+
+Synopsis
+#include <mongoc/mongoc.h>
+
+typedef struct {
+ bool is_initialized ;
+ bool background ;
+ bool unique ;
+ const char * name ;
+ bool drop_dups ;
+ bool sparse ;
+ int32_t expire_after_seconds ;
+ int32_t v ;
+ const bson_t * weights ;
+ const char * default_language ;
+ const char * language_override ;
+ mongoc_index_opt_geo_t * geo_options ;
+ mongoc_index_opt_storage_t * storage_options ;
+ const bson_t * partial_filter_expression ;
+ const bson_t * collation ;
+ void * padding [ 4 ];
+} mongoc_index_opt_t ;
+
+
+
+
+Deprecated
+This structure is deprecated and should not be used in new code. See Creating Indexes .
+
+
+Description
+This structure contains the options that may be used for tuning a specific index.
+See the createIndexes documentations in the MongoDB manual for descriptions of individual options.
+
+
Note
+
dropDups is deprecated as of MongoDB version 3.0.0. This option is silently ignored by the server and unique index builds using this option will fail if a duplicate value is detected.
+
+
+
+Example
+{
+ bson_t keys ;
+ bson_error_t error ;
+ mongoc_index_opt_t opt ;
+ mongoc_index_opt_geo_t geo_opt ;
+
+ mongoc_index_opt_init ( & opt );
+ mongoc_index_opt_geo_init ( & geo_opt );
+
+ bson_init ( & keys );
+ BSON_APPEND_UTF8 ( & keys , "location" , "2d" );
+
+ geo_opt . twod_location_min = -123 ;
+ geo_opt . twod_location_max = + 123 ;
+ geo_opt . twod_bits_precision = 30 ;
+ opt . geo_options = & geo_opt ;
+
+ collection = mongoc_client_get_collection ( client , "test" , "geo_test" );
+ if ( mongoc_collection_create_index ( collection , & keys , & opt , & error )) {
+ /* Successfully created the geo index */
+ }
+ bson_destroy ( & keys );
+ mongoc_collection_destroy ( & collection );
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_index_opt_wt_get_default.html b/libmongoc/1.23.4/mongoc_index_opt_wt_get_default.html
new file mode 100644
index 0000000000000000000000000000000000000000..411494914edb8457c6d27b213c9f12ee16e31400
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_index_opt_wt_get_default.html
@@ -0,0 +1,192 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_index_opt_wt_get_default() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_index_opt_wt_get_default()
+
+Synopsis
+const mongoc_index_opt_wt_t *
+mongoc_index_opt_wt_get_default ( void ) BSON_GNUC_PURE ;
+
+
+
+
+Returns
+Returns a pointer to the default WiredTiger index creation options.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_index_opt_wt_init.html b/libmongoc/1.23.4/mongoc_index_opt_wt_init.html
new file mode 100644
index 0000000000000000000000000000000000000000..ff524e18a99e5bc4af41865df9beeb32246c3581
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_index_opt_wt_init.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_index_opt_wt_init() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_index_opt_wt_init()
+
+Synopsis
+void
+mongoc_index_opt_wt_init ( mongoc_index_opt_wt_t * opt );
+
+
+
+
+
+Description
+This function will initialize opt to the default values. It should be called before modifying any fields within the structure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_index_opt_wt_t.html b/libmongoc/1.23.4/mongoc_index_opt_wt_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..47209538bfe3f7f78a465f55350a3e0f1f13544a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_index_opt_wt_t.html
@@ -0,0 +1,214 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_index_opt_wt_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_index_opt_wt_t
+
+Synopsis
+#include <mongoc/mongoc.h>
+
+typedef struct {
+ mongoc_index_opt_storage_t base ;
+ const char * config_str ;
+ void * padding [ 8 ];
+} mongoc_index_opt_wt_t ;
+
+
+
+
+Description
+This structure contains the options that may be used for tuning a WiredTiger specific index.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_init.html b/libmongoc/1.23.4/mongoc_init.html
new file mode 100644
index 0000000000000000000000000000000000000000..892d8aa7236cf8a9d5df38be187e8fefc305e591
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_init.html
@@ -0,0 +1,194 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_init() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_init()
+
+Synopsis
+void
+mongoc_init ( void );
+
+
+
+
+Description
+Initialize the MongoDB C Driver by calling mongoc_init() exactly once at the beginning of your program. It is responsible for initializing global state such as process counters, SSL, and threading primitives.
+Exception to this is mongoc_log_set_handler() , which should be called before mongoc_init() or some log traces would not use your log handling function. See Custom Log Handlers for a detailed example.
+Call mongoc_cleanup() exactly once at the end of your program to release all memory and other resources allocated by the driver. You must not call any other MongoDB C Driver functions after mongoc_cleanup() . Note that mongoc_init() does not reinitialize the driver after mongoc_cleanup() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_insert_flags_t.html b/libmongoc/1.23.4/mongoc_insert_flags_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..ed847132b82ec4ab74c95ae2da029d844d242de3
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_insert_flags_t.html
@@ -0,0 +1,212 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_insert_flags_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_insert_flags_t
+Flags for insert operations
+
+Synopsis
+typedef enum {
+ MONGOC_INSERT_NONE = 0 ,
+ MONGOC_INSERT_CONTINUE_ON_ERROR = 1 << 0 ,
+} mongoc_insert_flags_t ;
+
+#define MONGOC_INSERT_NO_VALIDATE (1U << 31)
+
+
+
+
+Description
+These flags correspond to the MongoDB wire protocol. They may be bitwise or’d together. They may modify how an insert happens on the MongoDB server.
+
+
+Flag Values
+
+
+MONGOC_INSERT_NONE
+Specify no insert flags.
+
+MONGOC_INSERT_CONTINUE_ON_ERROR
+Continue inserting documents from the insertion set even if one insert fails.
+
+MONGOC_INSERT_NO_VALIDATE
+Do not validate insertion documents before performing an insert. Validation can be expensive, so this can save some time if you know your documents are already valid.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_iovec_t.html b/libmongoc/1.23.4/mongoc_iovec_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..1a752ae6e95b02c14d8c25e9241ada252db0ec59
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_iovec_t.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_iovec_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_iovec_t
+
+
+Synopsis
+#include <mongoc/mongoc.h>
+
+#ifdef _WIN32
+typedef struct {
+ u_long iov_len ;
+ char * iov_base ;
+} mongoc_iovec_t ;
+#else
+typedef struct iovec mongoc_iovec_t ;
+#endif
+
+
+The mongoc_iovec_t structure is a portability abstraction for consumers of the mongoc_stream_t interfaces. It allows for scatter/gather I/O through the socket subsystem.
+
+
Warning
+
When writing portable code, beware of the ordering of iov_len and iov_base as they are different on various platforms. Therefore, you should not use C initializers for initialization.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_matcher_destroy.html b/libmongoc/1.23.4/mongoc_matcher_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..adb6ab820c4ebf80a99787472083fdb034927a39
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_matcher_destroy.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_matcher_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_matcher_destroy()
+
+Synopsis
+void
+mongoc_matcher_destroy ( mongoc_matcher_t * matcher );
+
+
+Release all resources associated with matcher including freeing the structure.
+
+
+Deprecated
+
+
Warning
+
mongoc_matcher_t is deprecated and will be removed in version 2.0.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_matcher_match.html b/libmongoc/1.23.4/mongoc_matcher_match.html
new file mode 100644
index 0000000000000000000000000000000000000000..73978293e8561604f546db8b27f9f18e68fcef3a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_matcher_match.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_matcher_match() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_matcher_match()
+
+Synopsis
+bool
+mongoc_matcher_match ( const mongoc_matcher_t * matcher , const bson_t * document );
+
+
+This function will check to see if the query compiled in matcher matches document .
+
+
+Deprecated
+
+
Warning
+
mongoc_matcher_t is deprecated and will be removed in version 2.0.
+
+
+
+
+Returns
+true if document matches the query specification provided to mongoc_matcher_new() . Otherwise, false .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_matcher_new.html b/libmongoc/1.23.4/mongoc_matcher_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..f2584ad2d39eba76c71c653b2c8dce8a863400a3
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_matcher_new.html
@@ -0,0 +1,212 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_matcher_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_matcher_new()
+
+Synopsis
+mongoc_matcher_t *
+mongoc_matcher_new ( const bson_t * query , bson_error_t * error )
+ BSON_GNUC_WARN_UNUSED_RESULT BSON_GNUC_DEPRECATED ;
+
+
+Create a new mongoc_matcher_t using the query specification provided.
+
+
+Deprecated
+
+
Warning
+
mongoc_matcher_t is deprecated and will be removed in version 2.0.
+
+
+
+
+Errors
+Errors are propagated via the error parameter.
+
+
+Returns
+A newly allocated mongoc_matcher_t that should be freed with mongoc_matcher_destroy() when no longer in use. Upon failure, NULL is returned and error is set. This could happen if query contains an invalid query specification.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_matcher_t.html b/libmongoc/1.23.4/mongoc_matcher_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..efd44981ad6617fc26640de138d5579200c6e005
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_matcher_t.html
@@ -0,0 +1,260 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_matcher_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_matcher_t
+Client-side document matching abstraction
+
+Synopsis
+typedef struct _mongoc_matcher_t mongoc_matcher_t ;
+
+
+mongoc_matcher_t provides a reduced-interface for client-side matching of BSON documents.
+It can perform the basics such as $in, $nin, $eq, $neq, $gt, $gte, $lt, and $lte.
+
+
Warning
+
mongoc_matcher_t does not currently support the full spectrum of query operations that the MongoDB server supports.
+
+
+
+Deprecated
+
+
Warning
+
mongoc_matcher_t is deprecated and will be removed in version 2.0.
+
+
+
+
+Example
+
+
Filter a sequence of BSON documents from STDIN based on a query
+
#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_matcher_t * matcher ;
+ bson_reader_t * reader ;
+ const bson_t * bson ;
+ bson_t * spec ;
+ char * str ;
+ int fd ;
+
+ mongoc_init ();
+
+#ifdef _WIN32
+ fd = fileno ( stdin );
+#else
+ fd = STDIN_FILENO ;
+#endif
+
+ reader = bson_reader_new_from_fd ( fd , false );
+
+ spec = BCON_NEW ( "hello" , "world" );
+ matcher = mongoc_matcher_new ( spec , NULL );
+
+ while (( bson = bson_reader_read ( reader , NULL ))) {
+ if ( mongoc_matcher_match ( matcher , bson )) {
+ str = bson_as_canonical_extended_json ( bson , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ }
+ }
+
+ bson_reader_destroy ( reader );
+ bson_destroy ( spec );
+
+ mongoc_cleanup ();
+
+ return 0 ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_optional_copy.html b/libmongoc/1.23.4/mongoc_optional_copy.html
new file mode 100644
index 0000000000000000000000000000000000000000..ef624cf45151335048bf20a13d41904c4fc8f90f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_optional_copy.html
@@ -0,0 +1,196 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_optional_copy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_optional_copy()
+
+Synopsis
+void
+mongoc_optional_copy ( const mongoc_optional_t * source , mongoc_optional_t * copy );
+
+
+Creates a deep copy of source into copy .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_optional_init.html b/libmongoc/1.23.4/mongoc_optional_init.html
new file mode 100644
index 0000000000000000000000000000000000000000..4febcb58bc857bcfb1ea3ce7dcf0cef60422061c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_optional_init.html
@@ -0,0 +1,195 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_optional_init() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_optional_init()
+
+Synopsis
+void
+mongoc_optional_init ( mongoc_optional_t * opt );
+
+
+Initializes values for a mongoc_optional_t .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_optional_is_set.html b/libmongoc/1.23.4/mongoc_optional_is_set.html
new file mode 100644
index 0000000000000000000000000000000000000000..6c652b6cbd5cf7c2ab83a433427eea1499809829
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_optional_is_set.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_optional_is_set() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_optional_is_set()
+
+Synopsis
+bool
+mongoc_optional_is_set ( const mongoc_optional_t * opt );
+
+
+Returns whether a value for a mongoc_optional_t was set.
+
+
+
+Returns
+Returns true if a value was set, or false otherwise.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_optional_set_value.html b/libmongoc/1.23.4/mongoc_optional_set_value.html
new file mode 100644
index 0000000000000000000000000000000000000000..babc74f4676cb4a6385ea7d8b4f679aaf8897efc
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_optional_set_value.html
@@ -0,0 +1,195 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_optional_set_value() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_optional_set_value()
+
+Synopsis
+void
+mongoc_optional_set_value ( mongoc_optional_t * opt );
+
+
+Sets a value on a mongoc_optional_t . Once a value has been set, it cannot be unset, i.e. mongoc_optional_is_set will always return true after calling mongoc_optional_set_value .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_optional_t.html b/libmongoc/1.23.4/mongoc_optional_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..f4f2851bba88555879b3c214d67d7fa9b10c5972
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_optional_t.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_optional_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_optional_t
+A struct to store optional boolean values.
+
+Synopsis
+Used to specify optional boolean flags, which may remain unset.
+This is used within mongoc_server_api_t to track whether a flag was explicitly set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_optional_value.html b/libmongoc/1.23.4/mongoc_optional_value.html
new file mode 100644
index 0000000000000000000000000000000000000000..c64dc80ea678a3f02793437a4f87fed6adeb6bf8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_optional_value.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_optional_value() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_optional_value()
+
+Synopsis
+bool
+mongoc_optional_value ( const mongoc_optional_t * opt );
+
+
+Returns the value for a mongoc_optional_t .
+
+
+
+Returns
+Returns the value that was set on the mongoc_optional_t . If no value was set, false is returned.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_query_flags_t.html b/libmongoc/1.23.4/mongoc_query_flags_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..3f6c9e299d2765391c32ad556bebea103102194a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_query_flags_t.html
@@ -0,0 +1,232 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_query_flags_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_query_flags_t
+Flags for query operations
+
+Synopsis
+typedef enum {
+ MONGOC_QUERY_NONE = 0 ,
+ MONGOC_QUERY_TAILABLE_CURSOR = 1 << 1 ,
+ MONGOC_QUERY_SECONDARY_OK = 1 << 2 ,
+ MONGOC_QUERY_OPLOG_REPLAY = 1 << 3 ,
+ MONGOC_QUERY_NO_CURSOR_TIMEOUT = 1 << 4 ,
+ MONGOC_QUERY_AWAIT_DATA = 1 << 5 ,
+ MONGOC_QUERY_EXHAUST = 1 << 6 ,
+ MONGOC_QUERY_PARTIAL = 1 << 7 ,
+} mongoc_query_flags_t ;
+
+
+
+
+Description
+These flags correspond to the MongoDB wire protocol. They may be bitwise or’d together. They may modify how a query is performed in the MongoDB server.
+
+
+Flag Values
+
+
+MONGOC_QUERY_NONE
+Specify no query flags.
+
+MONGOC_QUERY_TAILABLE_CURSOR
+Cursor will not be closed when the last data is retrieved. You can resume this cursor later.
+
+MONGOC_QUERY_SECONDARY_OK
+Allow query of replica set secondaries.
+
+MONGOC_QUERY_OPLOG_REPLAY
+Used internally by MongoDB.
+
+MONGOC_QUERY_NO_CURSOR_TIMEOUT
+The server normally times out an idle cursor after an inactivity period (10 minutes). This prevents that.
+
+MONGOC_QUERY_AWAIT_DATA
+Use with MONGOC_QUERY_TAILABLE_CURSOR. Block rather than returning no data. After a period, time out.
+
+MONGOC_QUERY_EXHAUST
+Stream the data down full blast in multiple “reply” packets. Faster when you are pulling down a lot of data and you know you want to retrieve it all.
+Only applies to cursors created from a find operation (i.e. mongoc_collection_find() ).
+
+MONGOC_QUERY_PARTIAL
+Get partial results from mongos if some shards are down (instead of throwing an error).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_rand.html b/libmongoc/1.23.4/mongoc_rand.html
new file mode 100644
index 0000000000000000000000000000000000000000..d2be695a8e71d0174ce344b7ac8647f46853d23c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_rand.html
@@ -0,0 +1,217 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_rand — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_rand
+MongoDB Random Number Generator
+
+Synopsis
+void
+mongoc_rand_add ( const void * buf , int num , double entropy );
+
+void
+mongoc_rand_seed ( const void * buf , int num );
+
+int
+mongoc_rand_status ( void );
+
+
+
+
+Description
+The mongoc_rand family of functions provide access to the low level randomness primitives used by the MongoDB C Driver. In particular, they control the creation of cryptographically strong pseudo-random bytes required by some security mechanisms.
+While we can usually pull enough entropy from the environment, you may be required to seed the PRNG manually depending on your OS, hardware and other entropy consumers running on the same system.
+
+
+Entropy
+mongoc_rand_add and mongoc_rand_seed allow the user to directly provide entropy. They differ insofar as mongoc_rand_seed requires that each bit provided is fully random. mongoc_rand_add allows the user to specify the degree of randomness in the provided bytes as well.
+
+
+Status
+The mongoc_rand_status function allows the user to check the status of the mongoc PRNG. This can be used to guarantee sufficient entropy at program startup, rather than waiting for runtime errors to occur.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_rand_add.html b/libmongoc/1.23.4/mongoc_rand_add.html
new file mode 100644
index 0000000000000000000000000000000000000000..17da881a5b143e494f2109e082b762c90218a3cc
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_rand_add.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_rand_add() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_rand_add()
+
+Synopsis
+void
+mongoc_rand_add ( const void * buf , int num , double entropy );
+
+
+
+
+Description
+Mixes num bytes of data into the mongoc random number generator. Entropy specifies a lower bound estimate of the randomness contained in buf.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_rand_seed.html b/libmongoc/1.23.4/mongoc_rand_seed.html
new file mode 100644
index 0000000000000000000000000000000000000000..fbb525e13edd82937b708b507e388c62ba29f045
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_rand_seed.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_rand_seed() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_rand_seed()
+
+Synopsis
+void
+mongoc_rand_seed ( const void * buf , int num );
+
+
+
+
+Description
+Seeds the mongoc random number generator with num bytes of entropy.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_rand_status.html b/libmongoc/1.23.4/mongoc_rand_status.html
new file mode 100644
index 0000000000000000000000000000000000000000..b92d2d43c0ab20218672829744a811b896cf0af7
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_rand_status.html
@@ -0,0 +1,196 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_rand_status() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_rand_status()
+
+Synopsis
+int
+mongoc_rand_status ( void );
+
+
+
+
+Description
+The status of the mongoc random number generator.
+
+
+Returns
+Returns 1 if the PRNG has been seeded with enough data, 0 otherwise.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_concern_append.html b/libmongoc/1.23.4/mongoc_read_concern_append.html
new file mode 100644
index 0000000000000000000000000000000000000000..65b09c715e2aa86a1291533550a75880b9c9b4e5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_concern_append.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_concern_append() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_concern_append()
+
+Synopsis
+bool
+mongoc_read_concern_append ( mongoc_read_concern_t * read_concern , bson_t * opts );
+
+
+
+
+
+Description
+This function appends a read concern to command options. It is useful for appending a read concern to command options before passing them to mongoc_client_read_command_with_opts() or a related function that takes an options document.
+
+
+Returns
+Returns true on success. If any arguments are invalid, returns false and logs an error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_concern_copy.html b/libmongoc/1.23.4/mongoc_read_concern_copy.html
new file mode 100644
index 0000000000000000000000000000000000000000..e20a9edc0e77ebb9060b7aee4542d42b05001d4d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_concern_copy.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_concern_copy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_concern_copy()
+
+Synopsis
+mongoc_read_concern_t *
+mongoc_read_concern_copy ( const mongoc_read_concern_t * read_concern )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+Performs a deep copy of read_concern .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_concern_destroy.html b/libmongoc/1.23.4/mongoc_read_concern_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..5132cd695b0963de8fce6218fc4091c06a43fc3e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_concern_destroy.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_concern_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_concern_destroy()
+
+Synopsis
+void
+mongoc_read_concern_destroy ( mongoc_read_concern_t * read_concern );
+
+
+
+
+
+Description
+Frees all resources associated with the read concern structure. Does nothing if read_concern is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_concern_get_level.html b/libmongoc/1.23.4/mongoc_read_concern_get_level.html
new file mode 100644
index 0000000000000000000000000000000000000000..2bb285a4274fefc17ffcd8f79498b21dcbf26589
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_concern_get_level.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_concern_get_level() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_concern_get_level()
+
+Synopsis
+const char *
+mongoc_read_concern_get_level ( const mongoc_read_concern_t * read_concern );
+
+
+
+
+
+Description
+Returns the currently set read concern.
+
+
+Returns
+Returns the current readConcern. If none is set, returns NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_concern_is_default.html b/libmongoc/1.23.4/mongoc_read_concern_is_default.html
new file mode 100644
index 0000000000000000000000000000000000000000..74750df732ab20370c54b1c00c6fa9bdbd06fdee
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_concern_is_default.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_concern_is_default() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_concern_is_default()
+
+Synopsis
+bool
+mongoc_read_concern_is_default ( mongoc_read_concern_t * read_concern );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_concern_new.html b/libmongoc/1.23.4/mongoc_read_concern_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..a16098f9212d545ee6650eb590895c8f6acf8c2c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_concern_new.html
@@ -0,0 +1,192 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_concern_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_concern_new()
+
+Synopsis
+mongoc_read_concern_t *
+mongoc_read_concern_new ( void ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Returns
+Creates a newly allocated read concern that can be configured based on user preference. This should be freed with mongoc_read_concern_destroy() when no longer in use.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_concern_set_level.html b/libmongoc/1.23.4/mongoc_read_concern_set_level.html
new file mode 100644
index 0000000000000000000000000000000000000000..6d04d23295233ca81838f839a5ab3a65697a338b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_concern_set_level.html
@@ -0,0 +1,208 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_concern_set_level() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_concern_set_level()
+
+Synopsis
+bool
+mongoc_read_concern_set_level ( mongoc_read_concern_t * read_concern ,
+ const char * level );
+
+
+
+
+
+Description
+Sets the read concern level. See mongoc_read_concern_t for details.
+Beginning in version 1.9.0, this function can now alter the read concern after
+it has been used in an operation. Previously, using the struct with an operation
+would mark it as “frozen” and calling this function would return false
+instead of altering the read concern.
+
+
+Returns
+Returns true if the read concern level was set, or false otherwise.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_concern_t.html b/libmongoc/1.23.4/mongoc_read_concern_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..6aa119c6fc5e57137891f6fb409a11e13a902b59
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_concern_t.html
@@ -0,0 +1,238 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_concern_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_concern_t
+Read Concern abstraction
+
+Synopsis
+New in MongoDB 3.2.
+The mongoc_read_concern_t allows clients to choose a level of isolation for their reads. The default, MONGOC_READ_CONCERN_LEVEL_LOCAL, is right for the great majority of applications.
+You can specify a read concern on connection objects, database objects, or collection objects.
+See readConcern on the MongoDB website for more information.
+Read Concern is only sent to MongoDB when it has explicitly been set by mongoc_read_concern_set_level() to anything other than NULL.
+
+
+Read Concern Levels
+
+
+Macro
+Description
+First MongoDB version
+
+
+
+MONGOC_READ_CONCERN_LEVEL_LOCAL
+Level “local”, the default.
+3.2
+
+MONGOC_READ_CONCERN_LEVEL_MAJORITY
+Level “majority”.
+3.2
+
+MONGOC_READ_CONCERN_LEVEL_LINEARIZABLE
+Level “linearizable”.
+3.4
+
+MONGOC_READ_CONCERN_LEVEL_AVAILABLE
+Level “available”.
+3.6
+
+MONGOC_READ_CONCERN_LEVEL_SNAPSHOT
+Level “snapshot”.
+4.0
+
+
+
+For the sake of compatibility with future versions of MongoDB, mongoc_read_concern_set_level() allows any string, not just this list of known read concern levels.
+See Read Concern Levels in the MongoDB manual for more information about the individual read concern levels.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_mode_t.html b/libmongoc/1.23.4/mongoc_read_mode_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..63cf0d0a7811dba9d43771591cf2126d2a6878d8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_mode_t.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_mode_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_mode_t
+Read Preference Modes
+
+Synopsis
+typedef enum {
+ MONGOC_READ_PRIMARY = ( 1 << 0 ),
+ MONGOC_READ_SECONDARY = ( 1 << 1 ),
+ MONGOC_READ_PRIMARY_PREFERRED = ( 1 << 2 ) | MONGOC_READ_PRIMARY ,
+ MONGOC_READ_SECONDARY_PREFERRED = ( 1 << 2 ) | MONGOC_READ_SECONDARY ,
+ MONGOC_READ_NEAREST = ( 1 << 3 ) | MONGOC_READ_SECONDARY ,
+} mongoc_read_mode_t ;
+
+
+
+
+Description
+This enum describes how reads should be dispatched. The default is MONGOC_READ_PRIMARY.
+Please see the MongoDB website for a description of Read Preferences .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_prefs_add_tag.html b/libmongoc/1.23.4/mongoc_read_prefs_add_tag.html
new file mode 100644
index 0000000000000000000000000000000000000000..cbf0187f2189961f86eb2644e5d25333fbd50794
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_prefs_add_tag.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_prefs_add_tag() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_prefs_add_tag()
+
+Synopsis
+void
+mongoc_read_prefs_add_tag ( mongoc_read_prefs_t * read_prefs , const bson_t * tag );
+
+
+
+
+
+Description
+This function shall add a tag to a read preference.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_prefs_copy.html b/libmongoc/1.23.4/mongoc_read_prefs_copy.html
new file mode 100644
index 0000000000000000000000000000000000000000..193f3931caa4379646436459a51abd19a4166bf7
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_prefs_copy.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_prefs_copy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_prefs_copy()
+
+Synopsis
+mongoc_read_prefs_t *
+mongoc_read_prefs_copy ( const mongoc_read_prefs_t * read_prefs )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+This function shall deep copy a read preference.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_prefs_destroy.html b/libmongoc/1.23.4/mongoc_read_prefs_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..defb6d900e81731e3a026b2b6223ec05ce0602ee
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_prefs_destroy.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_prefs_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_prefs_destroy()
+
+Synopsis
+void
+mongoc_read_prefs_destroy ( mongoc_read_prefs_t * read_prefs );
+
+
+
+
+
+Description
+Frees a read preference and all associated resources. Does nothing if read_prefs is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_prefs_get_hedge.html b/libmongoc/1.23.4/mongoc_read_prefs_get_hedge.html
new file mode 100644
index 0000000000000000000000000000000000000000..111a77c384de7759ad272a0246eaf6b732a05c59
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_prefs_get_hedge.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_prefs_get_hedge() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_prefs_get_hedge()
+
+Synopsis
+const bson_t *
+mongoc_read_prefs_get_hedge ( const mongoc_read_prefs_t * read_prefs );
+
+
+
+
+
+Description
+Fetches any read preference hedge document that has been registered.
+
+
+Returns
+Returns a bson_t that should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_prefs_get_max_staleness_seconds.html b/libmongoc/1.23.4/mongoc_read_prefs_get_max_staleness_seconds.html
new file mode 100644
index 0000000000000000000000000000000000000000..d884bc19441557a8b69bcde28bf87b9e53a2b6bd
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_prefs_get_max_staleness_seconds.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_prefs_get_max_staleness_seconds() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_prefs_get_max_staleness_seconds()
+
+Synopsis
+int64_t
+mongoc_read_prefs_get_max_staleness_seconds (
+ const mongoc_read_prefs_t * read_prefs );
+
+
+
+
+
+Description
+Clients estimate the staleness of each secondary, and select for reads only those secondaries whose estimated staleness is less than or equal to maxStalenessSeconds. The default is MONGOC_NO_MAX_STALENESS .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_prefs_get_mode.html b/libmongoc/1.23.4/mongoc_read_prefs_get_mode.html
new file mode 100644
index 0000000000000000000000000000000000000000..0e73453030f7feb7e2897d7e7a128f5729e7875c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_prefs_get_mode.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_prefs_get_mode() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_prefs_get_mode()
+
+Synopsis
+mongoc_read_mode_t
+mongoc_read_prefs_get_mode ( const mongoc_read_prefs_t * read_prefs );
+
+
+
+
+
+
+Returns
+Returns the read preference mode.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_prefs_get_tags.html b/libmongoc/1.23.4/mongoc_read_prefs_get_tags.html
new file mode 100644
index 0000000000000000000000000000000000000000..38be6a1ca9cb20c3c6728db2724e4dbd56d18d64
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_prefs_get_tags.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_prefs_get_tags() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_prefs_is_valid.html b/libmongoc/1.23.4/mongoc_read_prefs_is_valid.html
new file mode 100644
index 0000000000000000000000000000000000000000..4bf5873071c2ef799754c38e68d05d0b969cd919
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_prefs_is_valid.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_prefs_is_valid() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_prefs_is_valid()
+
+Synopsis
+bool
+mongoc_read_prefs_is_valid ( const mongoc_read_prefs_t * read_prefs );
+
+
+
+
+
+Description
+Performs a consistency check of read_prefs to ensure it makes sense and can be satisfied.
+This only performs local consistency checks.
+
+
+Returns
+Returns true if the read pref is valid.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_prefs_new.html b/libmongoc/1.23.4/mongoc_read_prefs_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..6bfcc034e0a0041caf6262266d86779cc62e60d2
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_prefs_new.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_prefs_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_prefs_new()
+
+Synopsis
+mongoc_read_prefs_t *
+mongoc_read_prefs_new ( mongoc_read_mode_t read_mode )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_prefs_set_hedge.html b/libmongoc/1.23.4/mongoc_read_prefs_set_hedge.html
new file mode 100644
index 0000000000000000000000000000000000000000..a5ac1aef8bf24e8dde4711b41ba8c7c4121ae507
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_prefs_set_hedge.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_prefs_set_hedge() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_prefs_set_hedge()
+
+Synopsis
+void
+mongoc_read_prefs_set_hedge ( mongoc_read_prefs_t * read_prefs ,
+ const bson_t * hedge );
+
+
+
+
+
+Description
+Sets the hedge document to be used for the read preference. Sharded clusters running MongoDB 4.4 or later can dispatch read operations in parallel, returning the result from the fastest host and cancelling the unfinished operations.
+For example, this is a valid hedge document
+
+Appropriate values for the enabled key are true or false .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_prefs_set_max_staleness_seconds.html b/libmongoc/1.23.4/mongoc_read_prefs_set_max_staleness_seconds.html
new file mode 100644
index 0000000000000000000000000000000000000000..9ac4b2e5a41090b9f29590c52e0abf0ee21c8a9c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_prefs_set_max_staleness_seconds.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_prefs_set_max_staleness_seconds() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_prefs_set_max_staleness_seconds()
+
+Synopsis
+void
+mongoc_read_prefs_set_max_staleness_seconds ( mongoc_read_prefs_t * read_prefs ,
+ int64_t max_staleness_seconds );
+
+
+
+
+
+Description
+Sets the maxStalenessSeconds to be used for the read preference. Clients estimate the staleness of each secondary, and select for reads only those secondaries whose estimated staleness is less than or equal to maxStalenessSeconds.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_prefs_set_mode.html b/libmongoc/1.23.4/mongoc_read_prefs_set_mode.html
new file mode 100644
index 0000000000000000000000000000000000000000..43575141cbbfa7f66b819c0584ead7df6f55cbeb
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_prefs_set_mode.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_prefs_set_mode() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_prefs_set_mode()
+
+Synopsis
+void
+mongoc_read_prefs_set_mode ( mongoc_read_prefs_t * read_prefs ,
+ mongoc_read_mode_t mode );
+
+
+
+
+
+Description
+Sets the read preference mode. See the MongoDB website for more information on Read Preferences .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_prefs_set_tags.html b/libmongoc/1.23.4/mongoc_read_prefs_set_tags.html
new file mode 100644
index 0000000000000000000000000000000000000000..1c460c81a73b4844e8b442d1fddb277d3643b9be
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_prefs_set_tags.html
@@ -0,0 +1,269 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_prefs_set_tags() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_read_prefs_t.html b/libmongoc/1.23.4/mongoc_read_prefs_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..051faac73f8884cdb6f85c705658315cf58d1fd8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_read_prefs_t.html
@@ -0,0 +1,268 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_read_prefs_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_read_prefs_t
+A read preference abstraction
+
+Synopsis
+mongoc_read_prefs_t provides an abstraction on top of the MongoDB connection read preferences. It allows for hinting to the driver which nodes in a replica set should be accessed first and how.
+You can specify a read preference mode on connection objects, database objects, collection objects, or per-operation. Generally, it makes the most sense to stick with the global default mode, MONGOC_READ_PRIMARY . All of the other modes come with caveats that won’t be covered in great detail here.
+
+
+Read Modes
+
+
+MONGOC_READ_PRIMARY
+Default mode. All operations read from the current replica set primary.
+
+MONGOC_READ_SECONDARY
+All operations read from among the nearest secondary members of the replica set.
+
+MONGOC_READ_PRIMARY_PREFERRED
+In most situations, operations read from the primary but if it is unavailable, operations read from secondary members.
+
+MONGOC_READ_SECONDARY_PREFERRED
+In most situations, operations read from among the nearest secondary members, but if no secondaries are available, operations read from the primary.
+
+MONGOC_READ_NEAREST
+Operations read from among the nearest members of the replica set, irrespective of the member’s type.
+
+
+
+
+
+Tag Sets
+Tag sets allow you to specify custom read preferences and write concerns so that your application can target operations to specific members.
+Custom read preferences and write concerns evaluate tags sets in different ways: read preferences consider the value of a tag when selecting a member to read from, while write concerns ignore the value of a tag when selecting a member, except to consider whether or not the value is unique.
+You can specify tag sets with the following read preference modes:
+
+primaryPreferred
+secondary
+secondaryPreferred
+nearest
+
+Tags are not compatible with MONGOC_READ_PRIMARY and, in general, only apply when selecting a secondary member of a set for a read operation. However, the nearest read mode, when combined with a tag set, will select the nearest member that matches the specified tag set, which may be a primary or secondary.
+Tag sets are represented as a comma-separated list of colon-separated key-value
+pairs when provided as a connection string, e.g. dc:ny,rack:1 .
+To specify a list of tag sets, using multiple readPreferenceTags, e.g.
+ readPreferenceTags=dc:ny,rack:1;readPreferenceTags=dc:ny;readPreferenceTags=
+
+
+Note the empty value for the last one, which means “match any secondary as a last resort”.
+Order matters when using multiple readPreferenceTags.
+Tag Sets can also be configured using mongoc_read_prefs_set_tags() .
+All interfaces use the same member selection logic to choose the member to which to direct read operations, basing the choice on read preference mode and tag sets.
+
+
+Max Staleness
+When connected to replica set running MongoDB 3.4 or later, the driver estimates the staleness of each secondary based on lastWriteDate values provided in server hello responses.
+Max Staleness is the maximum replication lag in seconds (wall clock time) that a secondary can suffer and still be eligible for reads. The default is MONGOC_NO_MAX_STALENESS , which disables staleness checks. Otherwise, it must be a positive integer at least MONGOC_SMALLEST_MAX_STALENESS_SECONDS (90 seconds).
+Max Staleness is also supported by sharded clusters of replica sets if all servers run MongoDB 3.4 or later.
+
+
+Hedged Reads
+When connecting to a sharded cluster running MongoDB 4.4 or later, reads can be sent in parallel to the two “best” hosts. Once one result returns, any other outstanding operations that were part of the hedged read are cancelled.
+When the read preference mode is MONGOC_READ_NEAREST and the sharded cluster is running MongoDB 4.4 or later, hedged reads are enabled by default. Additionally, hedged reads may be explicitly enabled or disabled by calling mongoc_read_prefs_set_hedge() with a BSON document, e.g.
+
+Appropriate values for the enabled key are true or false .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_remove_flags_t.html b/libmongoc/1.23.4/mongoc_remove_flags_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..480d40c8e76c65852c8a07d8791b05ff16e38a5a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_remove_flags_t.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_remove_flags_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_remove_flags_t
+Flags for deletion operations
+
+Synopsis
+typedef enum {
+ MONGOC_REMOVE_NONE = 0 ,
+ MONGOC_REMOVE_SINGLE_REMOVE = 1 << 0 ,
+} mongoc_remove_flags_t ;
+
+
+
+
+Description
+These flags correspond to the MongoDB wire protocol. They may be bitwise or’d together. They may change the number of documents that are removed during a remove command.
+
+
+Flag Values
+
+
+MONGOC_REMOVE_NONE
+Specify no removal flags. All matching documents will be removed.
+
+MONGOC_REMOVE_SINGLE_REMOVE
+Only remove the first matching document from the selector.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_reply_flags_t.html b/libmongoc/1.23.4/mongoc_reply_flags_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..509ff71ebd744fbd6ff5dbb83e68697493cf761f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_reply_flags_t.html
@@ -0,0 +1,219 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_reply_flags_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_reply_flags_t
+Flags from server replies
+
+Synopsis
+typedef enum {
+ MONGOC_REPLY_NONE = 0 ,
+ MONGOC_REPLY_CURSOR_NOT_FOUND = 1 << 0 ,
+ MONGOC_REPLY_QUERY_FAILURE = 1 << 1 ,
+ MONGOC_REPLY_SHARD_CONFIG_STALE = 1 << 2 ,
+ MONGOC_REPLY_AWAIT_CAPABLE = 1 << 3 ,
+} mongoc_reply_flags_t ;
+
+
+
+
+Description
+These flags correspond to the wire protocol. They may be bitwise or’d together.
+
+
+Flag Values
+
+
+MONGOC_REPLY_NONE
+No flags set.
+
+MONGOC_REPLY_CURSOR_NOT_FOUND
+No matching cursor was found on the server.
+
+MONGOC_REPLY_QUERY_FAILURE
+The query failed or was invalid. Error document has been provided.
+
+MONGOC_REPLY_SHARD_CONFIG_STALE
+Shard config is stale.
+
+MONGOC_REPLY_AWAIT_CAPABLE
+If the returned cursor is capable of MONGOC_QUERY_AWAIT_DATA.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_api_copy.html b/libmongoc/1.23.4/mongoc_server_api_copy.html
new file mode 100644
index 0000000000000000000000000000000000000000..a30014c181e5b08090d61423a5dfd4f2e3581766
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_api_copy.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_api_copy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_api_copy()
+
+Synopsis
+mongoc_server_api_t *
+mongoc_server_api_copy ( const mongoc_server_api_t * api )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Creates a deep copy of api .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_api_deprecation_errors.html b/libmongoc/1.23.4/mongoc_server_api_deprecation_errors.html
new file mode 100644
index 0000000000000000000000000000000000000000..41df3a419652329ea81e5df10a658f2dbad86417
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_api_deprecation_errors.html
@@ -0,0 +1,197 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_api_deprecation_errors() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_api_deprecation_errors()
+
+Synopsis
+void
+mongoc_server_api_deprecation_errors ( mongoc_server_api_t * api ,
+ bool deprecation_errors );
+
+
+Set whether or not to error on commands that are deprecated in this API version.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_api_destroy.html b/libmongoc/1.23.4/mongoc_server_api_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..ebcd3a57ac59198b9164c59aba57430c31971e31
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_api_destroy.html
@@ -0,0 +1,189 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_api_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_api_destroy()
+
+Synopsis
+void
+mongoc_server_api_destroy ( mongoc_server_api_t * api );
+
+
+Free a mongoc_server_api_t . Does nothing if api is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_api_get_deprecation_errors.html b/libmongoc/1.23.4/mongoc_server_api_get_deprecation_errors.html
new file mode 100644
index 0000000000000000000000000000000000000000..25d16cbeb47695486864312de9ef3b6710f7cb64
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_api_get_deprecation_errors.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_api_get_deprecation_errors() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_api_get_deprecation_errors()
+
+Synopsis
+const mongoc_optional_t *
+mongoc_server_api_get_deprecation_errors ( const mongoc_server_api_t * api );
+
+
+Returns the value of the deprecation_errors flag for the mongoc_server_api_t .
+
+
+
+Returns
+Returns a mongoc_optional_t indicating whether the deprecation_errors flag was set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_api_get_strict.html b/libmongoc/1.23.4/mongoc_server_api_get_strict.html
new file mode 100644
index 0000000000000000000000000000000000000000..3797c70fd23059e45ba9cfd35928d3648e0ae443
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_api_get_strict.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_api_get_strict() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_api_get_strict()
+
+Synopsis
+const mongoc_optional_t *
+mongoc_server_api_get_strict ( const mongoc_server_api_t * api );
+
+
+Returns the value of the strict flag for the mongoc_server_api_t .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_api_get_version.html b/libmongoc/1.23.4/mongoc_server_api_get_version.html
new file mode 100644
index 0000000000000000000000000000000000000000..5ac883259370244818d1831fa3ff24650703bc9a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_api_get_version.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_api_get_version() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_api_get_version()
+
+Synopsis
+mongoc_server_api_version_t
+mongoc_server_api_get_version ( const mongoc_server_api_t * api );
+
+
+Fetch the declared API version as from a mongoc_server_api_t .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_api_new.html b/libmongoc/1.23.4/mongoc_server_api_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..062b349e0e5520a0bce3566db4987aacf4bef2ee
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_api_new.html
@@ -0,0 +1,194 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_api_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_api_new()
+
+Synopsis
+mongoc_server_api_t *
+mongoc_server_api_new ( mongoc_server_api_version_t version )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Create a struct to hold server API preferences.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_api_strict.html b/libmongoc/1.23.4/mongoc_server_api_strict.html
new file mode 100644
index 0000000000000000000000000000000000000000..94395540d35abbe96543479cead375e3146a99a3
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_api_strict.html
@@ -0,0 +1,196 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_api_strict() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_api_strict()
+
+Synopsis
+void
+mongoc_server_api_strict ( mongoc_server_api_t * api , bool strict );
+
+
+Set whether to be strict about the list of allowed commands in this API version.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_api_t.html b/libmongoc/1.23.4/mongoc_server_api_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..cb80b3b60df0f14b037dc66c2ecfb77fc6d38ecc
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_api_t.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_api_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_api_t
+A versioned API to use for connections.
+
+Synopsis
+Used to specify which version of the MongoDB server’s API to use for driver connections.
+The server API type takes a mongoc_server_api_version_t . It can optionally be strict about the list of allowed commands in that API version, and can also optionally provide errors for deprecated commands in that API version.
+A mongoc_server_api_t can be set on a client, and will then be sent to MongoDB for most commands run using that client.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_api_version_from_string.html b/libmongoc/1.23.4/mongoc_server_api_version_from_string.html
new file mode 100644
index 0000000000000000000000000000000000000000..e19fe9e2d306231d621d85d8b2450cfb49f7700c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_api_version_from_string.html
@@ -0,0 +1,201 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_api_version_from_string() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_api_version_from_string()
+
+Synopsis
+bool
+mongoc_server_api_version_from_string ( const char * version ,
+ mongoc_server_api_version_t * out );
+
+
+Given a string version , populates out with the equivalent mongoc_server_api_version_t if version represents a valid API version.
+
+
+
+Returns
+True on success, false on failure. On success, out is populated with the converted version string. On failure, out is not altered.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_api_version_t.html b/libmongoc/1.23.4/mongoc_server_api_version_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..fbb7fc41006ab1aec708b916a52c401e0fa5e3e0
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_api_version_t.html
@@ -0,0 +1,210 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_api_version_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_api_version_t
+A representation of server API version numbers.
+
+Synopsis
+Used to specify which version of the MongoDB server’s API to use for driver connections.
+
+
+Supported API Versions
+The driver currently supports the following MongoDB API versions:
+
+
+Enum value
+MongoDB version string
+
+
+
+MONGOC_SERVER_API_V1
+“1”
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_api_version_to_string.html b/libmongoc/1.23.4/mongoc_server_api_version_to_string.html
new file mode 100644
index 0000000000000000000000000000000000000000..00b7cb7f592381cd8971c05aa458c544fa9c243b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_api_version_to_string.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_api_version_to_string() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_api_version_to_string()
+
+Synopsis
+const char *
+mongoc_server_api_version_to_string ( mongoc_server_api_version_t version );
+
+
+Returns the string representation of version , or NULL if version has no string representation.
+
+
+
+Returns
+Returns the string representation of version or NULL. The returned string should not be freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_description_destroy.html b/libmongoc/1.23.4/mongoc_server_description_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..d0cdc563539eb316717bbcc81db7117b1e4951fb
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_description_destroy.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_description_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_description_destroy()
+
+Synopsis
+void
+mongoc_server_description_destroy ( mongoc_server_description_t * description );
+
+
+
+
+
+Description
+Frees all resources associated with the server description. Does nothing if description is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_description_hello_response.html b/libmongoc/1.23.4/mongoc_server_description_hello_response.html
new file mode 100644
index 0000000000000000000000000000000000000000..297747dccdcfa61a4ab5fcf1c0937f089ac44c4e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_description_hello_response.html
@@ -0,0 +1,208 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_description_hello_response() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_description_hello_response()
+
+Synopsis
+const bson_t *
+mongoc_server_description_hello_response (
+ const mongoc_server_description_t * description );
+
+
+
+
+
+Description
+The client or client pool periodically runs a
+“hello”
+command on each server, to update its view of the MongoDB deployment. Use
+mongoc_client_get_server_descriptions() and
+mongoc_server_description_hello_response() to get the most recent “hello”
+response.
+
+
+Returns
+A reference to a BSON document, owned by the server description. The document is empty if the driver is not connected to the server.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_description_host.html b/libmongoc/1.23.4/mongoc_server_description_host.html
new file mode 100644
index 0000000000000000000000000000000000000000..eb13d1b09fcc4e452a2faca07507e3bb7d454a30
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_description_host.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_description_host() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_description_host()
+
+Synopsis
+mongoc_host_list_t *
+mongoc_server_description_host ( const mongoc_server_description_t * description );
+
+
+
+
+
+Description
+Return the server’s host and port. This object is owned by the server description.
+
+
+Returns
+A reference to the server description’s mongoc_host_list_t , which you must not modify or free.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_description_id.html b/libmongoc/1.23.4/mongoc_server_description_id.html
new file mode 100644
index 0000000000000000000000000000000000000000..dfd62fb21fb2781d2d863221b3b7d0968af05cd3
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_description_id.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_description_id() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_description_id()
+
+Synopsis
+uint32_t
+mongoc_server_description_id ( const mongoc_server_description_t * description );
+
+
+
+
+
+Description
+Get the server’s id, an opaque identifier generated by the client or client pool.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_description_ismaster.html b/libmongoc/1.23.4/mongoc_server_description_ismaster.html
new file mode 100644
index 0000000000000000000000000000000000000000..aebc9f11f15d758ec0c98b2453f95afdc4b41d21
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_description_ismaster.html
@@ -0,0 +1,211 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_description_ismaster() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_description_ismaster()
+
+Synopsis
+const bson_t *
+mongoc_server_description_ismaster (
+ const mongoc_server_description_t * description );
+
+
+
+
+
+
+Description
+The client or client pool periodically runs a “hello” command on each server, to update its view of the MongoDB deployment. Use mongoc_client_get_server_descriptions() and mongoc_server_description_hello_response() to get the most recent “hello” response.
+
+
+Returns
+A reference to a BSON document, owned by the server description. The document is empty if the driver is not connected to the server.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_description_last_update_time.html b/libmongoc/1.23.4/mongoc_server_description_last_update_time.html
new file mode 100644
index 0000000000000000000000000000000000000000..513bf57413f147002d02b0b93c301a790b77ceaa
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_description_last_update_time.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_description_last_update_time() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_description_last_update_time()
+
+Synopsis
+int64_t
+mongoc_server_description_last_update_time ( const mongoc_server_description_t * description );
+
+
+
+
+
+Description
+Get the last point in time when we processed a hello for this server, or, if we have not processed any hellos since creating the description, the time the server description was initialized.
+
+
+Returns
+The server’s last update time, in microseconds.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_description_new_copy.html b/libmongoc/1.23.4/mongoc_server_description_new_copy.html
new file mode 100644
index 0000000000000000000000000000000000000000..8c976c2e388b13a98aa9d4d59a30008b6627a084
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_description_new_copy.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_description_new_copy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_description_new_copy()
+
+Synopsis
+mongoc_server_description_t *
+mongoc_server_description_new_copy (
+ const mongoc_server_description_t * description ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+Performs a deep copy of description .
+
+
+Returns
+Returns a newly allocated copy of description that should be freed with mongoc_server_description_destroy() when no longer in use. Returns NULL if description is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_description_round_trip_time.html b/libmongoc/1.23.4/mongoc_server_description_round_trip_time.html
new file mode 100644
index 0000000000000000000000000000000000000000..b0b4b21f08e85b92851500b9b9b28bc942c9b30b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_description_round_trip_time.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_description_round_trip_time() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_description_round_trip_time()
+
+Synopsis
+int64_t
+mongoc_server_description_round_trip_time (
+ const mongoc_server_description_t * description );
+
+
+
+
+
+Description
+Get the server’s round trip time in milliseconds. This is the client’s measurement of the duration of a “hello” command.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_description_t.html b/libmongoc/1.23.4/mongoc_server_description_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..0d7266b300eefe8d5c774511a276a791de063741
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_description_t.html
@@ -0,0 +1,218 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_description_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_description_t
+Server description
+
+Synopsis
+#include <mongoc/mongoc.h>
+typedef struct _mongoc_server_description_t mongoc_server_description_t
+
+
+mongoc_server_description_t holds information about a mongod or mongos the driver is connected to.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_description_type.html b/libmongoc/1.23.4/mongoc_server_description_type.html
new file mode 100644
index 0000000000000000000000000000000000000000..22f9a7becd8cd11c6061ad59adba78afa46bb147
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_description_type.html
@@ -0,0 +1,210 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_description_type() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_description_type()
+
+Synopsis
+const char *
+mongoc_server_description_type ( const mongoc_server_description_t * description );
+
+
+
+
+
+Description
+This function returns a string, one of the server types defined in the Server Discovery And Monitoring Spec:
+
+Standalone
+Mongos
+PossiblePrimary
+LoadBalancer
+RSPrimary
+RSSecondary
+RSArbiter
+RSOther
+RSGhost
+Unknown
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_server_descriptions_destroy_all.html b/libmongoc/1.23.4/mongoc_server_descriptions_destroy_all.html
new file mode 100644
index 0000000000000000000000000000000000000000..dff0e1349b4b57218439fb2625fd21a3db84979a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_server_descriptions_destroy_all.html
@@ -0,0 +1,197 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_server_descriptions_destroy_all() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_server_descriptions_destroy_all()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_session_opt_t.html b/libmongoc/1.23.4/mongoc_session_opt_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..585c802dbe872310d052ad15f958712ec8b5b2f8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_session_opt_t.html
@@ -0,0 +1,210 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_session_opt_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_session_opt_t
+#include <mongoc/mongoc.h>
+
+typedef struct _mongoc_session_opt_t mongoc_session_opt_t ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_session_opts_clone.html b/libmongoc/1.23.4/mongoc_session_opts_clone.html
new file mode 100644
index 0000000000000000000000000000000000000000..e98854c4b167ef5eed4dfd3b11cf82d01e8eb93b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_session_opts_clone.html
@@ -0,0 +1,302 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_session_opts_clone() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_session_opts_clone()
+
+Synopsis
+mongoc_session_opt_t *
+mongoc_session_opts_clone ( const mongoc_session_opt_t * opts )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Create a copy of a session options struct.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_session_opts_destroy.html b/libmongoc/1.23.4/mongoc_session_opts_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..34f53bf5a9868563a7bb2d9c043430ca71beb8d4
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_session_opts_destroy.html
@@ -0,0 +1,301 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_session_opts_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_session_opts_destroy()
+
+Synopsis
+void
+mongoc_session_opts_destroy ( mongoc_session_opt_t * opts );
+
+
+Free a mongoc_session_opt_t . Does nothing if opts is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_session_opts_get_causal_consistency.html b/libmongoc/1.23.4/mongoc_session_opts_get_causal_consistency.html
new file mode 100644
index 0000000000000000000000000000000000000000..899a5bb843af473d4d26ce3c74d9566031ce5201
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_session_opts_get_causal_consistency.html
@@ -0,0 +1,297 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_session_opts_get_causal_consistency() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_session_opts_get_causal_consistency()
+
+Synopsis
+bool
+mongoc_session_opts_get_causal_consistency ( const mongoc_session_opt_t * opts );
+
+
+Return true if this session is configured for causal consistency (the default), else false. See mongoc_session_opts_set_causal_consistency() .
+
+
+Parameters
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_session_opts_get_default_transaction_opts.html b/libmongoc/1.23.4/mongoc_session_opts_get_default_transaction_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..89e89bc3e428fdcc47fb9f5b26d1b0eaf8d8397e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_session_opts_get_default_transaction_opts.html
@@ -0,0 +1,301 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_session_opts_get_default_transaction_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_session_opts_get_default_transaction_opts()
+
+Synopsis
+const mongoc_transaction_opt_t *
+mongoc_session_opts_get_default_transaction_opts ( const mongoc_session_opt_t * opts );
+
+
+The default options for transactions started with this session. See mongoc_session_opts_set_default_transaction_opts() .
+
+
+
+Returns
+A mongoc_transaction_opt_t that is valid only for the lifetime of opts .
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_session_opts_get_snapshot.html b/libmongoc/1.23.4/mongoc_session_opts_get_snapshot.html
new file mode 100644
index 0000000000000000000000000000000000000000..d76c102b3f274377054b25bb060f219c4ebb5424
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_session_opts_get_snapshot.html
@@ -0,0 +1,297 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_session_opts_get_snapshot() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_session_opts_get_snapshot()
+
+Synopsis
+bool
+mongoc_session_opts_get_snapshot ( const mongoc_session_opt_t * opts );
+
+
+Return true if this session is configured for snapshot reads, false by default. See mongoc_session_opts_set_snapshot() .
+
+
+Parameters
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_session_opts_get_transaction_opts.html b/libmongoc/1.23.4/mongoc_session_opts_get_transaction_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..3a9bb3868b780acc1adf00f595c203d0bbabdd10
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_session_opts_get_transaction_opts.html
@@ -0,0 +1,303 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_session_opts_get_transaction_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_session_opts_get_transaction_opts()
+
+Synopsis
+mongoc_transaction_opt_t *
+mongoc_session_opts_get_transaction_opts (
+ const mongoc_client_session_t * session ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+The options for the current transaction started with this session.
+If this session is not in a transaction, then the returned value is NULL . See mongoc_client_session_in_transaction() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_session_opts_new.html b/libmongoc/1.23.4/mongoc_session_opts_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..4b3eb1c2d2da04e66aa852d71a8cf756ba9468bc
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_session_opts_new.html
@@ -0,0 +1,299 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_session_opts_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_session_opts_new()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_session_opts_set_causal_consistency.html b/libmongoc/1.23.4/mongoc_session_opts_set_causal_consistency.html
new file mode 100644
index 0000000000000000000000000000000000000000..3e73311d2aa71eeac6d1d20af002ebaeca2fc602
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_session_opts_set_causal_consistency.html
@@ -0,0 +1,343 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_session_opts_set_causal_consistency() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_session_opts_set_causal_consistency()
+
+Synopsis
+void
+mongoc_session_opts_set_causal_consistency ( mongoc_session_opt_t * opts ,
+ bool causal_consistency );
+
+
+Configure causal consistency in a session. If true (the default), each operation in the session will be causally ordered after the previous read or write operation. Set to false to disable causal consistency. See the MongoDB Manual Entry for Causal Consistency .
+Causal consistency and snapshot reads are mutually exclusive. Attempting to set both to true will result in an error. See mongoc_session_opts_set_snapshot() .
+Unacknowledged writes are not causally consistent. If you execute a write operation with a mongoc_write_concern_t on which you have called mongoc_write_concern_set_w() with a value of 0, the write does not participate in causal consistency.
+
+
+
+Example
+mongoc_client_t * client ;
+mongoc_session_opt_t * session_opts ;
+mongoc_client_session_t * client_session ;
+mongoc_collection_t * collection ;
+bson_t insert_opts = BSON_INITIALIZER ;
+bson_t * doc ;
+bson_error_t error ;
+bool r ;
+
+client = mongoc_client_new ( "mongodb://example/?appname=session-opts-example" );
+mongoc_client_set_error_api ( client , 2 );
+
+session_opts = mongoc_session_opts_new ();
+mongoc_session_opts_set_causal_consistency ( session_opts , false );
+client_session = mongoc_client_start_session ( client , session_opts , & error );
+mongoc_session_opts_destroy ( session_opts );
+
+if ( ! client_session ) {
+ fprintf ( stderr , "Failed to start session: %s \n " , error . message );
+ abort ();
+}
+
+collection = mongoc_client_get_collection ( client , "test" , "collection" );
+doc = BCON_NEW ( "_id" , BCON_INT32 ( 1 ));
+r = mongoc_client_session_append ( client_session , & insert_opts , NULL );
+if ( ! r ) {
+ fprintf ( stderr , "mongoc_client_session_append failed: %s \n " , error . message );
+ abort ();
+}
+
+r = mongoc_collection_insert_one (
+ collection , doc , & insert_opts , NULL /* reply */ , & error );
+
+if ( ! r ) {
+ fprintf ( stderr , "Insert failed: %s \n " , error . message );
+ abort ();
+}
+
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_session_opts_set_default_transaction_opts.html b/libmongoc/1.23.4/mongoc_session_opts_set_default_transaction_opts.html
new file mode 100644
index 0000000000000000000000000000000000000000..a9b6cc0d24de55c12c8e9d25c1499b0c8f079133
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_session_opts_set_default_transaction_opts.html
@@ -0,0 +1,306 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_session_opts_set_default_transaction_opts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_session_opts_set_default_transaction_opts()
+
+
+Parameters
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_session_opts_set_snapshot.html b/libmongoc/1.23.4/mongoc_session_opts_set_snapshot.html
new file mode 100644
index 0000000000000000000000000000000000000000..06026f70813499c5ca33c2da4be9a60f7a08c105
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_session_opts_set_snapshot.html
@@ -0,0 +1,340 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_session_opts_set_snapshot() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_session_opts_set_snapshot()
+
+Synopsis
+void
+mongoc_session_opts_set_snapshot ( mongoc_session_opt_t * opts ,
+ bool snapshot );
+
+
+Configure snapshot reads for a session. If true (false by default), each read operation in the session will be sent with a “snapshot” level read concern. After the first read operation (“find”, “aggregate” or “distinct”), subsequent read operations will read from the same point in time as the first read operation. Set to true to enable snapshot reads. See the official documentation for Read Concern “snapshot” .
+Snapshot reads and causal consistency are mutually exclusive. Attempting to set both to true will result in an error. See mongoc_session_opts_set_causal_consistency() .
+Snapshot reads can only be used on MongoDB server version 5.0 and later and cannot be used during a transaction. A write operation in a snapshot-enabled session will also result in an error.
+
+
+
+Example
+mongoc_client_t * client ;
+mongoc_session_opt_t * session_opts ;
+mongoc_client_session_t * client_session ;
+mongoc_collection_t * collection ;
+bson_t query_opts = BSON_INITIALIZER ;
+bson_t filter = BSON_INITIALIZER ;
+bson_t pipeline = BSON_INITIALIZER ;
+
+client = mongoc_client_new ( "mongodb://example/?appname=session-opts-example" );
+mongoc_client_set_error_api ( client , MONGOC_ERROR_API_VERSION_2 );
+
+session_opts = mongoc_session_opts_new ();
+mongoc_session_opts_set_snapshot ( session_opts , true );
+client_session = mongoc_client_start_session ( client , session_opts , & error );
+mongoc_session_opts_destroy ( session_opts );
+
+if ( ! client_session ) {
+ fprintf ( stderr , "Failed to start session: %s \n " , error . message );
+ abort ();
+}
+
+collection = mongoc_client_get_collection ( client , "test" , "collection" );
+r = mongoc_client_session_append ( client_session , & find_opts , & error );
+if ( ! r ) {
+ fprintf ( stderr , "mongoc_client_session_append failed: %s \n " , error . message );
+ abort ();
+}
+
+/* First read operation will set the snapshot time for subsequent reads. */
+cursor = mongoc_collection_find_with_opts ( collection , filter , & query_opts , NULL );
+
+/* Subsequent read operations will automatically read from the same point
+ * in time as the first read operation. */
+cursor = mongoc_collection_aggregate ( collection , MONGOC_QUERY_NONE , pipeline , & query_opts , NULL );
+
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_socket_accept.html b/libmongoc/1.23.4/mongoc_socket_accept.html
new file mode 100644
index 0000000000000000000000000000000000000000..0f283ab837f46897429ad97e29a13a2ee243a16e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_socket_accept.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_socket_accept() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_socket_accept()
+
+Synopsis
+mongoc_socket_t *
+mongoc_socket_accept ( mongoc_socket_t * sock ,
+ int64_t expire_at ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+This function is a wrapper around the BSD socket accept() interface. It allows for more portability between UNIX-like and Microsoft Windows platforms.
+
+
+Returns
+NULL upon failure to accept or timeout. A newly allocated mongoc_socket_t that should be released with mongoc_socket_destroy() on success.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_socket_bind.html b/libmongoc/1.23.4/mongoc_socket_bind.html
new file mode 100644
index 0000000000000000000000000000000000000000..577908d7298cefe6899cf0d9aec8ddbf4db515b8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_socket_bind.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_socket_bind() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_socket_bind()
+
+Synopsis
+int
+mongoc_socket_bind ( mongoc_socket_t * sock ,
+ const struct sockaddr * addr ,
+ mongoc_socklen_t addrlen );
+
+
+
+
+
+Description
+This function is a wrapper around the BSD socket bind() interface. It provides better portability between UNIX-like and Microsoft Windows platforms.
+
+
+Returns
+0 on success, -1 on failure and errno is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_socket_close.html b/libmongoc/1.23.4/mongoc_socket_close.html
new file mode 100644
index 0000000000000000000000000000000000000000..e38887bb2677141246532de4bb5176fc25eeba96
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_socket_close.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_socket_close() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_socket_close()
+
+Synopsis
+int
+mongoc_socket_close ( mongoc_socket_t * socket );
+
+
+
+
+
+Description
+This function is a wrapper around the BSD socket shutdown() and close() functions, and their Windows equivalents. The socket is shut down only if the current process is the same as the process that opened the socket. Regardless, the socket is then closed.
+
+
+Returns
+0 on success, -1 on failure to close the socket. On failure, the socket’s errno is set; retrieve it with mongoc_socket_errno() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_socket_connect.html b/libmongoc/1.23.4/mongoc_socket_connect.html
new file mode 100644
index 0000000000000000000000000000000000000000..bc200e5abe6e898b65c25e7a8718d251fe264925
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_socket_connect.html
@@ -0,0 +1,209 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_socket_connect() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_socket_connect()
+
+Synopsis
+int
+mongoc_socket_connect ( mongoc_socket_t * sock ,
+ const struct sockaddr * addr ,
+ mongoc_socklen_t addrlen ,
+ int64_t expire_at );
+
+
+
+
+
+Description
+This function is a wrapper around the BSD socket connect() interface. It provides better portability between UNIX-like and Microsoft Windows platforms.
+This function performs a socket connection but will fail if expire_at has been reached by the monotonic clock. Keep in mind that this is an absolute timeout in milliseconds. You should add your desired timeout to System Clock .
+
+
+Returns
+0 if successful, -1 on failure and errno is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_socket_destroy.html b/libmongoc/1.23.4/mongoc_socket_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..4d9e9d0ec8aea29f9a89167d19b9edc43188d413
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_socket_destroy.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_socket_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_socket_destroy()
+
+Synopsis
+void
+mongoc_socket_destroy ( mongoc_socket_t * sock );
+
+
+
+
+
+Description
+This function releases all resources associated with a mongoc_socket_t . This should be called when you are no longer using the socket. Does nothing if sock is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_socket_errno.html b/libmongoc/1.23.4/mongoc_socket_errno.html
new file mode 100644
index 0000000000000000000000000000000000000000..73bf963f1c91d6ff4660b03cc0232687e1199aeb
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_socket_errno.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_socket_errno() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_socket_errno()
+
+Synopsis
+int
+mongoc_socket_errno ( mongoc_socket_t * sock );
+
+
+
+
+
+Description
+This function returns the currently captured errno for a socket. This may be useful to check was the last errno was after another function call has been made that clears the threads errno variable.
+
+
+Returns
+0 if there is no error, otherwise a specific errno.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_socket_getnameinfo.html b/libmongoc/1.23.4/mongoc_socket_getnameinfo.html
new file mode 100644
index 0000000000000000000000000000000000000000..7bb4ed57df0c138be220dcad10a3c86faf761dd6
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_socket_getnameinfo.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_socket_getnameinfo() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_socket_getnameinfo()
+
+Synopsis
+char *
+mongoc_socket_getnameinfo ( mongoc_socket_t * sock ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+This is a helper around getting the local name of a socket. It is a wrapper around getpeername() and getnameinfo() .
+
+
+Returns
+A newly allocated string that should be freed with bson_free() .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_socket_getsockname.html b/libmongoc/1.23.4/mongoc_socket_getsockname.html
new file mode 100644
index 0000000000000000000000000000000000000000..8b46827b2d6e5ecdccd0e0fa901ad91a8fedb93f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_socket_getsockname.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_socket_getsockname() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_socket_getsockname()
+
+Synopsis
+int
+mongoc_socket_getsockname ( mongoc_socket_t * sock ,
+ struct sockaddr * addr ,
+ mongoc_socklen_t * addrlen );
+
+
+
+
+
+Description
+Retrieves the socket name for sock . The result is stored in addr . addrlen should be the size of the addr when calling this.
+
+
+Returns
+0 if successful, otherwise -1 and errno is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_socket_listen.html b/libmongoc/1.23.4/mongoc_socket_listen.html
new file mode 100644
index 0000000000000000000000000000000000000000..7e94923df29dc875e1f964d1c9fcf3bff4b702d5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_socket_listen.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_socket_listen() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_socket_listen()
+
+Synopsis
+int
+mongoc_socket_listen ( mongoc_socket_t * sock , unsigned int backlog );
+
+
+
+
+
+Description
+This function is similar to the BSD sockets listen() function. It is meant for socket servers.
+
+
+Returns
+0 on success, -1 on failure and errno is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_socket_new.html b/libmongoc/1.23.4/mongoc_socket_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..49812072647faaf54fb8afeb441062e43434d48f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_socket_new.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_socket_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_socket_new()
+
+Synopsis
+mongoc_socket_t *
+mongoc_socket_new ( int domain ,
+ int type ,
+ int protocol ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Parameters
+
+domain : An int containing the address family such as AF_INET.
+type : An int containing the socket type such as SOCK_STREAM.
+protocol : A protocol subset, typically 0.
+
+
+
+Description
+Creates a new mongoc_socket_t structure. This calls socket() underneath to create a network socket.
+
+
+Returns
+A new socket if successful, otherwise NULL and errno is set. The result should be freed with mongoc_socket_destroy() when no longer in use.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_socket_recv.html b/libmongoc/1.23.4/mongoc_socket_recv.html
new file mode 100644
index 0000000000000000000000000000000000000000..9dee34036051712c625543d30dce7e4005032c9b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_socket_recv.html
@@ -0,0 +1,210 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_socket_recv() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_socket_recv()
+
+Synopsis
+ssize_t
+mongoc_socket_recv ( mongoc_socket_t * sock ,
+ void * buf ,
+ size_t buflen ,
+ int flags ,
+ int64_t expire_at );
+
+
+
+
+Parameters
+
+sock : A mongoc_socket_t .
+buf : A buffer to read into.
+buflen : A size_t with the number of bytes to receive.
+flags : flags for recv() .
+expire_at : A int64_t with the time to expire in monotonic time using System Clock , which is in microseconds.
+
+
+
+Description
+This function performs a recv() on the underlying socket.
+
+
+Returns
+The number of bytes received on success, 0 on stream closed, and -1 if there was a failure and errno is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_socket_send.html b/libmongoc/1.23.4/mongoc_socket_send.html
new file mode 100644
index 0000000000000000000000000000000000000000..91debb14f107bf101b9a2a682d20087825366d62
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_socket_send.html
@@ -0,0 +1,208 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_socket_send() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_socket_send()
+
+Synopsis
+ssize_t
+mongoc_socket_send ( mongoc_socket_t * sock ,
+ const void * buf ,
+ size_t buflen ,
+ int64_t expire_at );
+
+
+
+
+Parameters
+
+sock : A mongoc_socket_t .
+buf : A buffer to send.
+buflen : A size_t with the number of bytes in buf.
+expire_at : A int64_t with an absolute timeout for the operation or 0. The timeout is in monotonic time using microseconds. You can retrieve the current monotonic time with System Clock .
+
+
+
+Description
+Sends buflen bytes in buf to the destination. If a timeout expired, the number of bytes sent will be returned or -1 if no bytes were sent.
+
+
+Returns
+-1 on failure and errno is set, or the number of bytes sent.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_socket_sendv.html b/libmongoc/1.23.4/mongoc_socket_sendv.html
new file mode 100644
index 0000000000000000000000000000000000000000..b0ff55cd2cd6d27920ae6fa7e7151d7d5fafd8a1
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_socket_sendv.html
@@ -0,0 +1,208 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_socket_sendv() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_socket_sendv()
+
+Synopsis
+ssize_t
+mongoc_socket_sendv ( mongoc_socket_t * sock ,
+ mongoc_iovec_t * iov ,
+ size_t iovcnt ,
+ int64_t expire_at );
+
+
+
+
+
+Description
+Sends a vector of buffers to the destination. This uses sendmsg() when available to perform a gathered write. If IOV_MAX is reached, a fallback will be used.
+
+
+Returns
+the number of bytes sent on success, or -1 on failure and errno is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_socket_setsockopt.html b/libmongoc/1.23.4/mongoc_socket_setsockopt.html
new file mode 100644
index 0000000000000000000000000000000000000000..ba2a1a5e2a83a6ab59f2f74c19b39273516d91d4
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_socket_setsockopt.html
@@ -0,0 +1,210 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_socket_setsockopt() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_socket_setsockopt()
+
+Synopsis
+int
+mongoc_socket_setsockopt ( mongoc_socket_t * sock ,
+ int level ,
+ int optname ,
+ const void * optval ,
+ mongoc_socklen_t optlen );
+
+
+
+
+
+Description
+This is a helper function for setsockopt() .
+
+
+Returns
+0 on success, -1 on failure and errno is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_socket_t.html b/libmongoc/1.23.4/mongoc_socket_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..d6ff6af92e2edf379451521c55b6f3f3990668ed
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_socket_t.html
@@ -0,0 +1,214 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_socket_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_socket_t
+Portable socket abstraction
+
+Synopsis
+#include <mongoc/mongoc.h>
+
+typedef struct _mongoc_socket_t mongoc_socket_t
+
+
+
+
+Synopsis
+This structure provides a socket abstraction that is friendlier for portability than BSD sockets directly. Inconsistencies between Linux, various BSDs, Solaris, and Windows are handled here.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_ssl_opt_get_default.html b/libmongoc/1.23.4/mongoc_ssl_opt_get_default.html
new file mode 100644
index 0000000000000000000000000000000000000000..5e141865d2b066c164fef3949de829eee6af2567
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_ssl_opt_get_default.html
@@ -0,0 +1,192 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_ssl_opt_get_default() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_ssl_opt_get_default()
+
+Synopsis
+const mongoc_ssl_opt_t *
+mongoc_ssl_opt_get_default ( void ) BSON_GNUC_PURE ;
+
+
+
+
+Returns
+Returns the default SSL options for the process. This should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_ssl_opt_t.html b/libmongoc/1.23.4/mongoc_ssl_opt_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..1ee6a2b16875aaffe5c65df2bc022c8c5efb3737
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_ssl_opt_t.html
@@ -0,0 +1,222 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_ssl_opt_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_ssl_opt_t
+
+Synopsis
+typedef struct {
+ const char * pem_file ;
+ const char * pem_pwd ;
+ const char * ca_file ;
+ const char * ca_dir ;
+ const char * crl_file ;
+ bool weak_cert_validation ;
+ bool allow_invalid_hostname ;
+ void * internal ;
+ void * padding [ 6 ];
+} mongoc_ssl_opt_t ;
+
+
+
+
+Description
+This structure is used to set the TLS options for a mongoc_client_t or mongoc_client_pool_t .
+Beginning in version 1.2.0, once a pool or client has any TLS options set, all connections use TLS, even if ssl=true is omitted from the MongoDB URI. Before, TLS options were ignored unless tls=true was included in the URI.
+As of 1.4.0, the mongoc_client_pool_set_ssl_opts() and mongoc_client_set_ssl_opts() will not only shallow copy the struct, but will also copy the const char* . It is therefore no longer needed to make sure the values remain valid after setting them.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_buffered_new.html b/libmongoc/1.23.4/mongoc_stream_buffered_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..f8a1d92c59943486f148fdca7b80bcae0cce6799
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_buffered_new.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_buffered_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_buffered_new()
+
+Synopsis
+mongoc_stream_t *
+mongoc_stream_buffered_new ( mongoc_stream_t * base_stream ,
+ size_t buffer_size ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Parameters
+
+This function shall create a new mongoc_stream_t that buffers bytes to and from the underlying base_stream .
+buffer_size will be used as the initial buffer size. It may grow past this size.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_buffered_t.html b/libmongoc/1.23.4/mongoc_stream_buffered_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..f801ff3dd9598d9b4b988c77245674ac550bc9c7
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_buffered_t.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_buffered_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_buffered_t
+
+Synopsis
+typedef struct _mongoc_stream_buffered_t mongoc_stream_buffered_t ;
+
+
+
+
+Description
+mongoc_stream_buffered_t should be considered a subclass of mongoc_stream_t . It performs buffering on an underlying stream.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_close.html b/libmongoc/1.23.4/mongoc_stream_close.html
new file mode 100644
index 0000000000000000000000000000000000000000..c1aa629e18eef7b478354c93cacacd4da0cff0df
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_close.html
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_close() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_close()
+
+Synopsis
+int
+mongoc_stream_close ( mongoc_stream_t * stream );
+
+
+
+
+Parameters
+
+This function shall close underlying file-descriptors of stream .
+
+
+Returns
+0 on success, otherwise -1 and errno is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_cork.html b/libmongoc/1.23.4/mongoc_stream_cork.html
new file mode 100644
index 0000000000000000000000000000000000000000..e15f9652293678dc17b1ca09f3c028903b910189
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_cork.html
@@ -0,0 +1,212 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_cork() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_cork()
+
+Synopsis
+int
+mongoc_stream_cork ( mongoc_stream_t * stream );
+
+
+
+
+Parameters
+
+This function shall prevent the writing of bytes to the underlying socket.
+
+
Note
+
Not all streams implement this function. Buffering generally works better.
+
+
+
+Returns
+0 on success, -1 on failure and errno is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_destroy.html b/libmongoc/1.23.4/mongoc_stream_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..365fff337b5b560c80603725001f12dcb99c6d97
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_destroy.html
@@ -0,0 +1,195 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_destroy()
+
+Synopsis
+void
+mongoc_stream_destroy ( mongoc_stream_t * stream );
+
+
+
+
+Parameters
+
+This function shall release all resources associated with a mongoc_stream_t , including freeing the structure. It is invalid to use stream after calling this function. Does nothing if stream is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_file_get_fd.html b/libmongoc/1.23.4/mongoc_stream_file_get_fd.html
new file mode 100644
index 0000000000000000000000000000000000000000..5fbfda53048e31bd51ab2462420545c0f5e47a0b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_file_get_fd.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_file_get_fd() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_file_get_fd()
+
+Synopsis
+int
+mongoc_stream_file_get_fd ( mongoc_stream_file_t * stream );
+
+
+
+
+Parameters
+
+This function shall return the underlying file-descriptor of a mongoc_stream_file_t .
+
+
Warning
+
Performing operations on the underlying file-descriptor may not be safe if used in conjunction with buffering. Avoid reading or writing from this file-descriptor.
+
+
+
+Returns
+A file-descriptor that should not be modified by the caller.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_file_new.html b/libmongoc/1.23.4/mongoc_stream_file_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..bcde599f053043ab5250a54e9cf09c14872d4692
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_file_new.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_file_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_file_new()
+
+Synopsis
+mongoc_stream_t *
+mongoc_stream_file_new ( int fd ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_file_new_for_path.html b/libmongoc/1.23.4/mongoc_stream_file_new_for_path.html
new file mode 100644
index 0000000000000000000000000000000000000000..056a98dacfad57328fbeb2be7c497209c08544a5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_file_new_for_path.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_file_new_for_path() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_file_new_for_path()
+
+Synopsis
+mongoc_stream_t *
+mongoc_stream_file_new_for_path ( const char * path ,
+ int flags ,
+ int mode ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Parameters
+
+path : The path of the target file.
+flags : Flags to be passed to open() .
+mode : An optional mode to be passed to open() when creating a file.
+
+This function shall create a new mongoc_stream_file_t after opening the underlying file with open() or the platform equivalent.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_file_t.html b/libmongoc/1.23.4/mongoc_stream_file_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..2d929cf145943393ae6783d125d9c7e1ece039a8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_file_t.html
@@ -0,0 +1,197 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_file_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_file_t
+
+Synopsis
+typedef struct _mongoc_stream_file_t mongoc_stream_file_t
+
+
+mongoc_stream_file_t is a mongoc_stream_t subclass for working with standard UNIX style file-descriptors.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_flush.html b/libmongoc/1.23.4/mongoc_stream_flush.html
new file mode 100644
index 0000000000000000000000000000000000000000..9d198e3d3ea50c3d7858197589df056d0c35beaf
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_flush.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_flush() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_flush()
+
+Synopsis
+int
+mongoc_stream_flush ( mongoc_stream_t * stream );
+
+
+
+
+Parameters
+
+This function shall flush any buffered bytes in the underlying stream to the physical transport. It mimics the API and semantics of fflush() , forcing a write of user space buffered data.
+Not all stream implementations may implement this feature.
+
+
+Returns
+0 is returned on success, otherwise -1 and errno is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_get_base_stream.html b/libmongoc/1.23.4/mongoc_stream_get_base_stream.html
new file mode 100644
index 0000000000000000000000000000000000000000..2ed8fd3fa172d23589bd3117974abe5f2df53152
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_get_base_stream.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_get_base_stream() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_get_base_stream()
+
+Synopsis
+mongoc_stream_t *
+mongoc_stream_get_base_stream ( mongoc_stream_t * stream );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_gridfs_new.html b/libmongoc/1.23.4/mongoc_stream_gridfs_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..9d922ef271faebe891fc0fe3b2af103957473759
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_gridfs_new.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_gridfs_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_gridfs_new()
+
+Synopsis
+mongoc_stream_t *
+mongoc_stream_gridfs_new ( mongoc_gridfs_file_t * file )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_read.html b/libmongoc/1.23.4/mongoc_stream_read.html
new file mode 100644
index 0000000000000000000000000000000000000000..e3a2bdcf8a2e9b5f3f951c00894d176f243b4e01
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_read.html
@@ -0,0 +1,219 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_read() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_read()
+
+Synopsis
+ssize_t
+mongoc_stream_read ( mongoc_stream_t * stream ,
+ void * buf ,
+ size_t count ,
+ size_t min_bytes ,
+ int32_t timeout_msec );
+
+
+
+
+Parameters
+
+stream : A mongoc_stream_t .
+buf : The buffer to read into.
+count : The number of bytes to read.
+min_bytes : The minimum number of bytes to read, or else indicate failure.
+timeout_msec : The number of milliseconds to wait before failure, a timeout of 0 will not block. If negative, use the default timeout.
+
+The mongoc_stream_read() function shall perform a read from a mongoc_stream_t . It’s modeled on the API and semantics of read() , though the parameters map only loosely.
+
+
+Returns
+The mongoc_stream_read() function returns the number of bytes read on success. It returns >= 0 and < min_bytes when end-of-file is encountered and -1 on failure. errno is set upon failure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_readv.html b/libmongoc/1.23.4/mongoc_stream_readv.html
new file mode 100644
index 0000000000000000000000000000000000000000..5f7bd1abd3e2d51bd9af6aa1b62a2c5f48de7267
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_readv.html
@@ -0,0 +1,219 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_readv() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_readv()
+
+Synopsis
+ssize_t
+mongoc_stream_readv ( mongoc_stream_t * stream ,
+ mongoc_iovec_t * iov ,
+ size_t iovcnt ,
+ size_t min_bytes ,
+ int32_t timeout_msec );
+
+
+
+
+Parameters
+
+stream : A mongoc_stream_t .
+iov : A vector of mongoc_iovec_t .
+iovcnt : The number of items in iov .
+min_bytes : The minimum number of bytes to read or failure will be indicated.
+timeout_msec : A timeout in milliseconds, or 0 to indicate non-blocking. A negative value with use the default timeout.
+
+This function is identical to mongoc_stream_read() except that it takes a mongoc_iovec_t to perform gathered I/O.
+
+
+Returns
+>= 0 on success, -1 on failure and errno is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_setsockopt.html b/libmongoc/1.23.4/mongoc_stream_setsockopt.html
new file mode 100644
index 0000000000000000000000000000000000000000..45d3b3967c2a176f8485fe6b33f625de06cf7808
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_setsockopt.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_setsockopt() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_setsockopt()
+
+Synopsis
+int
+mongoc_stream_setsockopt ( mongoc_stream_t * stream ,
+ int level ,
+ int optname ,
+ void * optval ,
+ mongoc_socklen_t optlen );
+
+
+
+
+Parameters
+
+stream : A mongoc_stream_t .
+level : The level to pass to setsockopt() .
+optname : The optname to pass to setsockopt() .
+optval : The optval to pass to setsockopt() .
+optlen : The optlen to pass to setsockopt() .
+
+This function is a wrapper around setsockopt() for streams that wrap sockets.
+
+
+Returns
+0 on success, otherwise -1 and errno is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_should_retry.html b/libmongoc/1.23.4/mongoc_stream_should_retry.html
new file mode 100644
index 0000000000000000000000000000000000000000..d4b579fa714b3b46ad347d797173893c11beb894
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_should_retry.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_should_retry() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_should_retry()
+
+Synopsis
+bool
+mongoc_stream_should_retry ( mongoc_stream_t * stream );
+
+
+
+
+
+Returns
+True if the stream is open and has encountered a retryable network error such as EAGAIN or if a TLS exchange is in progress and needs more data.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_socket_get_socket.html b/libmongoc/1.23.4/mongoc_stream_socket_get_socket.html
new file mode 100644
index 0000000000000000000000000000000000000000..4d2c640a6044496584ed7c5bec3cdf1688ec3735
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_socket_get_socket.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_socket_get_socket() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_socket_get_socket()
+
+Synopsis
+mongoc_socket_t *
+mongoc_stream_socket_get_socket ( mongoc_stream_socket_t * stream );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_socket_new.html b/libmongoc/1.23.4/mongoc_stream_socket_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..a456205dc650235a652207654093d91c0790b74b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_socket_new.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_socket_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_socket_new()
+
+Synopsis
+mongoc_stream_t *
+mongoc_stream_socket_new ( mongoc_socket_t * socket )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_socket_t.html b/libmongoc/1.23.4/mongoc_stream_socket_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..c7f96033c54ad347f3e4f8f88d1368d01517be7a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_socket_t.html
@@ -0,0 +1,196 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_socket_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_socket_t
+
+Synopsis
+typedef struct _mongoc_stream_socket_t mongoc_stream_socket_t
+
+
+mongoc_stream_socket_t should be considered a subclass of mongoc_stream_t that works upon socket streams.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_t.html b/libmongoc/1.23.4/mongoc_stream_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..c61bcab47c4bc2dc8c5534b5f1d1c02e3ad805ea
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_t.html
@@ -0,0 +1,228 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_t
+
+Synopsis
+typedef struct _mongoc_stream_t mongoc_stream_t
+
+
+mongoc_stream_t provides a generic streaming IO abstraction based on a struct of pointers interface. The idea is to allow wrappers, perhaps other language drivers, to easily shim their IO system on top of mongoc_stream_t .
+The API for the stream abstraction is currently private and non-extensible.
+
+
+Stream Types
+There are a number of built in stream types that come with mongoc. The default configuration is a buffered unix stream. If TLS is in use, that in turn is wrapped in a tls stream.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_timed_out.html b/libmongoc/1.23.4/mongoc_stream_timed_out.html
new file mode 100644
index 0000000000000000000000000000000000000000..a3221b54199c335311d2f0f0375a20ed0715d1ea
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_timed_out.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_timed_out() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_timed_out()
+
+Synopsis
+bool
+mongoc_stream_timed_out ( mongoc_stream_t * stream );
+
+
+
+
+
+Returns
+True if there has been a network timeout error on this stream.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_tls_t.html b/libmongoc/1.23.4/mongoc_stream_tls_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..593d147bcf9d854fa85c0d501bbd7a31a6a02399
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_tls_t.html
@@ -0,0 +1,187 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_tls_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_tls_t
+
+Synopsis
+typedef struct _mongoc_stream_tls_t mongoc_stream_tls_t
+
+
+mongoc_stream_tls_t is a mongoc_stream_t subclass for working with TLS streams.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_uncork.html b/libmongoc/1.23.4/mongoc_stream_uncork.html
new file mode 100644
index 0000000000000000000000000000000000000000..05c698254f46e0b5c784da8f77c64367e569bf87
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_uncork.html
@@ -0,0 +1,212 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_uncork() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_uncork()
+
+Synopsis
+int
+mongoc_stream_uncork ( mongoc_stream_t * stream );
+
+
+
+
+Parameters
+
+This function shall allow a previously corked socket to pass bytes to the underlying socket.
+
+
Note
+
Not all streams implement this function. Buffering generally works better.
+
+
+
+Returns
+0 on success, -1 on failure and errno is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_write.html b/libmongoc/1.23.4/mongoc_stream_write.html
new file mode 100644
index 0000000000000000000000000000000000000000..fa823e45f3e47142f6f183be2edab8458d4e2bc7
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_write.html
@@ -0,0 +1,217 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_write() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_write()
+
+Synopsis
+ssize_t
+mongoc_stream_write ( mongoc_stream_t * stream ,
+ void * buf ,
+ size_t count ,
+ int32_t timeout_msec );
+
+
+
+
+Parameters
+
+stream : A mongoc_stream_t .
+buf : The buffer to write.
+count : The number of bytes to write.
+timeout_msec : The number of milliseconds to wait before failure, a timeout of 0 will not block. If negative, use the default timeout.
+
+The mongoc_stream_write() function shall perform a write to a mongoc_stream_t . It’s modeled on the API and semantics of write() , though the parameters map only loosely.
+
+
+Returns
+The mongoc_stream_write() function returns the number of bytes written on success. It returns -1 and sets errno upon failure.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_stream_writev.html b/libmongoc/1.23.4/mongoc_stream_writev.html
new file mode 100644
index 0000000000000000000000000000000000000000..35ab541e8d89487cade617f08373474eafa74126
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_stream_writev.html
@@ -0,0 +1,208 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_stream_writev() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_stream_writev()
+
+Synopsis
+ssize_t
+mongoc_stream_writev ( mongoc_stream_t * stream ,
+ mongoc_iovec_t * iov ,
+ size_t iovcnt ,
+ int32_t timeout_msec );
+
+
+
+
+Parameters
+
+stream : A mongoc_stream_t .
+iov : A vector of mongoc_iovec_t .
+iovcnt : The number of items in iov .
+timeout_msec : The number of milliseconds to block before indicating failure, or 0 for non-blocking. Negative values indicate the default timeout.
+
+The mongoc_stream_writev() function shall perform a write
+to a mongoc_stream_t . It’s modeled on the
+API and semantics of writev() , though the parameters map only
+loosely.
+
+
+Returns
+The number of bytes written on success, or -1 upon failure and errno is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_topology_description_destroy.html b/libmongoc/1.23.4/mongoc_topology_description_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..48fea8901a8e8352df6d974505f23e061730e23c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_topology_description_destroy.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_topology_description_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_topology_description_destroy()
+
+Synopsis
+void
+mongoc_topology_description_destroy ( mongoc_topology_description_t * description );
+
+
+
+
+
+Description
+Frees all resources associated with the topology description. Does nothing if description is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_topology_description_get_servers.html b/libmongoc/1.23.4/mongoc_topology_description_get_servers.html
new file mode 100644
index 0000000000000000000000000000000000000000..61287d437f427b07ca0e4e55d5cd1219511a789c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_topology_description_get_servers.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_topology_description_get_servers() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_topology_description_get_servers()
+
+Synopsis
+mongoc_server_description_t **
+mongoc_topology_description_get_servers (
+ const mongoc_topology_description_t * td ,
+ size_t * n ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Fetches an array of mongoc_server_description_t structs for all known servers in the topology.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_topology_description_has_readable_server.html b/libmongoc/1.23.4/mongoc_topology_description_has_readable_server.html
new file mode 100644
index 0000000000000000000000000000000000000000..c05537e88fa10c57d642f94ffe92ac5fc175d931
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_topology_description_has_readable_server.html
@@ -0,0 +1,211 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_topology_description_has_readable_server() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_topology_description_has_readable_server()
+
+Synopsis
+bool
+mongoc_topology_description_has_readable_server (
+ const mongoc_topology_description_t * td , const mongoc_read_prefs_t * prefs );
+
+
+Determines if the topology has a readable server available. Servers are filtered
+by the given read preferences only if the driver is connected to a replica set,
+otherwise the read preferences are ignored. This function uses the driver’s
+current knowledge of the state of the MongoDB server or servers it is connected
+to; it does no I/O and it does not block.
+
+
+
+Returns
+True if there is a known server matching prefs .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_topology_description_has_writable_server.html b/libmongoc/1.23.4/mongoc_topology_description_has_writable_server.html
new file mode 100644
index 0000000000000000000000000000000000000000..25c97c5394970f06d8bb2cef01f15ff88732d5f4
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_topology_description_has_writable_server.html
@@ -0,0 +1,209 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_topology_description_has_writable_server() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_topology_description_has_writable_server()
+
+Synopsis
+bool
+mongoc_topology_description_has_writable_server (
+ const mongoc_topology_description_t * td );
+
+
+Determines if the topology has a writable server available, such as a primary,
+mongos, or standalone. This function uses the driver’s current knowledge of the
+state of the MongoDB server or servers it is connected to; it does no I/O and it
+does not block.
+
+
+
+Returns
+True if there is a known writable server.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_topology_description_new_copy.html b/libmongoc/1.23.4/mongoc_topology_description_new_copy.html
new file mode 100644
index 0000000000000000000000000000000000000000..ce55dc756187bb212847b43097058614d8ebefa4
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_topology_description_new_copy.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_topology_description_new_copy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_topology_description_new_copy()
+
+Synopsis
+mongoc_topology_description_t *
+mongoc_topology_description_new_copy (
+ const mongoc_topology_description_t * description )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+Performs a deep copy of description .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_topology_description_t.html b/libmongoc/1.23.4/mongoc_topology_description_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..42faa55fe3a2fb3961e38718cccc57e351a8f710
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_topology_description_t.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_topology_description_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_topology_description_t
+Status of MongoDB Servers
+
+Synopsis
+typedef struct _mongoc_topology_description_t mongoc_topology_description_t ;
+
+
+mongoc_topology_description_t is an opaque type representing the driver’s knowledge of the MongoDB server or servers it is connected to.
+Its API conforms to the SDAM Monitoring Specification .
+Applications receive a temporary reference to a mongoc_topology_description_t as a parameter to an SDAM Monitoring callback that must not be destroyed. See Introduction to Application Performance Monitoring .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_topology_description_type.html b/libmongoc/1.23.4/mongoc_topology_description_type.html
new file mode 100644
index 0000000000000000000000000000000000000000..aee22d0c74d5dbbe0aaa7fc2f0735eb03ba2b573
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_topology_description_type.html
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_topology_description_type() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_topology_description_type()
+
+Synopsis
+const char *
+mongoc_topology_description_type ( const mongoc_topology_description_t * td );
+
+
+
+
+
+Description
+This function returns a string, one of the topology types defined in the Server Discovery And Monitoring Spec:
+
+Unknown
+Single
+Sharded
+ReplicaSetNoPrimary
+ReplicaSetWithPrimary
+LoadBalanced
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_transaction_opt_t.html b/libmongoc/1.23.4/mongoc_transaction_opt_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..fbfe4e9f24a99db330972ee2acbbd9a57a0d5b51
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_transaction_opt_t.html
@@ -0,0 +1,402 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_transaction_opt_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_transaction_opt_t
+#include <mongoc/mongoc.h>
+
+typedef struct _mongoc_transaction_opt_t mongoc_transaction_opt_t ;
+
+
+
+
+Example
+
+
example-transaction.c
+
/* gcc example-transaction.c -o example-transaction \
+ * $(pkg-config --cflags --libs libmongoc-1.0) */
+
+/* ./example-transaction [CONNECTION_STRING] */
+
+#include <stdio.h>
+#include <mongoc/mongoc.h>
+
+
+int
+main ( int argc , char * argv [])
+{
+ int exit_code = EXIT_FAILURE ;
+
+ mongoc_client_t * client = NULL ;
+ mongoc_database_t * database = NULL ;
+ mongoc_collection_t * collection = NULL ;
+ mongoc_client_session_t * session = NULL ;
+ mongoc_session_opt_t * session_opts = NULL ;
+ mongoc_transaction_opt_t * default_txn_opts = NULL ;
+ mongoc_transaction_opt_t * txn_opts = NULL ;
+ mongoc_read_concern_t * read_concern = NULL ;
+ mongoc_write_concern_t * write_concern = NULL ;
+ const char * uri_string = "mongodb://127.0.0.1/?appname=transaction-example" ;
+ mongoc_uri_t * uri ;
+ bson_error_t error ;
+ bson_t * doc = NULL ;
+ bson_t * insert_opts = NULL ;
+ int32_t i ;
+ int64_t start ;
+ bson_t reply = BSON_INITIALIZER ;
+ char * reply_json ;
+ bool r ;
+
+ mongoc_init ();
+
+ if ( argc > 1 ) {
+ uri_string = argv [ 1 ];
+ }
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ MONGOC_ERROR ( "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ goto done ;
+ }
+
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ goto done ;
+ }
+
+ mongoc_client_set_error_api ( client , 2 );
+ database = mongoc_client_get_database ( client , "example-transaction" );
+
+ /* inserting into a nonexistent collection normally creates it, but a
+ * collection can't be created in a transaction; create it now */
+ collection =
+ mongoc_database_create_collection ( database , "collection" , NULL , & error );
+
+ if ( ! collection ) {
+ /* code 48 is NamespaceExists, see error_codes.err in mongodb source */
+ if ( error . code == 48 ) {
+ collection = mongoc_database_get_collection ( database , "collection" );
+ } else {
+ MONGOC_ERROR ( "Failed to create collection: %s" , error . message );
+ goto done ;
+ }
+ }
+
+ /* a transaction's read preferences, read concern, and write concern can be
+ * set on the client, on the default transaction options, or when starting
+ * the transaction. for the sake of this example, set read concern on the
+ * default transaction options. */
+ default_txn_opts = mongoc_transaction_opts_new ();
+ read_concern = mongoc_read_concern_new ();
+ mongoc_read_concern_set_level ( read_concern , "snapshot" );
+ mongoc_transaction_opts_set_read_concern ( default_txn_opts , read_concern );
+ session_opts = mongoc_session_opts_new ();
+ mongoc_session_opts_set_default_transaction_opts ( session_opts ,
+ default_txn_opts );
+
+ session = mongoc_client_start_session ( client , session_opts , & error );
+ if ( ! session ) {
+ MONGOC_ERROR ( "Failed to start session: %s" , error . message );
+ goto done ;
+ }
+
+ /* in this example, set write concern when starting the transaction */
+ txn_opts = mongoc_transaction_opts_new ();
+ write_concern = mongoc_write_concern_new ();
+ mongoc_write_concern_set_wmajority ( write_concern , 1000 /* wtimeout */ );
+ mongoc_transaction_opts_set_write_concern ( txn_opts , write_concern );
+
+ insert_opts = bson_new ();
+ if ( ! mongoc_client_session_append ( session , insert_opts , & error )) {
+ MONGOC_ERROR ( "Could not add session to opts: %s" , error . message );
+ goto done ;
+ }
+
+retry_transaction :
+ r = mongoc_client_session_start_transaction ( session , txn_opts , & error );
+ if ( ! r ) {
+ MONGOC_ERROR ( "Failed to start transaction: %s" , error . message );
+ goto done ;
+ }
+
+ /* insert two documents - on error, retry the whole transaction */
+ for ( i = 0 ; i < 2 ; i ++ ) {
+ doc = BCON_NEW ( "_id" , BCON_INT32 ( i ));
+ bson_destroy ( & reply );
+ r = mongoc_collection_insert_one (
+ collection , doc , insert_opts , & reply , & error );
+
+ bson_destroy ( doc );
+
+ if ( ! r ) {
+ MONGOC_ERROR ( "Insert failed: %s" , error . message );
+ mongoc_client_session_abort_transaction ( session , NULL );
+
+ /* a network error, primary failover, or other temporary error in a
+ * transaction includes {"errorLabels": ["TransientTransactionError"]},
+ * meaning that trying the entire transaction again may succeed
+ */
+ if ( mongoc_error_has_label ( & reply , "TransientTransactionError" )) {
+ goto retry_transaction ;
+ }
+
+ goto done ;
+ }
+
+ reply_json = bson_as_json ( & reply , NULL );
+ printf ( "%s \n " , reply_json );
+ bson_free ( reply_json );
+ }
+
+ /* in case of transient errors, retry for 5 seconds to commit transaction */
+ start = bson_get_monotonic_time ();
+ while ( bson_get_monotonic_time () - start < 5 * 1000 * 1000 ) {
+ bson_destroy ( & reply );
+ r = mongoc_client_session_commit_transaction ( session , & reply , & error );
+ if ( r ) {
+ /* success */
+ break ;
+ } else {
+ MONGOC_ERROR ( "Warning: commit failed: %s" , error . message );
+ if ( mongoc_error_has_label ( & reply , "TransientTransactionError" )) {
+ goto retry_transaction ;
+ } else if ( mongoc_error_has_label ( & reply ,
+ "UnknownTransactionCommitResult" )) {
+ /* try again to commit */
+ continue ;
+ }
+
+ /* unrecoverable error trying to commit */
+ break ;
+ }
+ }
+
+ exit_code = EXIT_SUCCESS ;
+
+done :
+ bson_destroy ( & reply );
+ bson_destroy ( insert_opts );
+ mongoc_write_concern_destroy ( write_concern );
+ mongoc_read_concern_destroy ( read_concern );
+ mongoc_transaction_opts_destroy ( txn_opts );
+ mongoc_transaction_opts_destroy ( default_txn_opts );
+ mongoc_client_session_destroy ( session );
+ mongoc_collection_destroy ( collection );
+ mongoc_database_destroy ( database );
+ mongoc_uri_destroy ( uri );
+ mongoc_client_destroy ( client );
+
+ mongoc_cleanup ();
+
+ return exit_code ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_transaction_opts_clone.html b/libmongoc/1.23.4/mongoc_transaction_opts_clone.html
new file mode 100644
index 0000000000000000000000000000000000000000..32025ad48390049d9743a49f707f12208145f1a9
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_transaction_opts_clone.html
@@ -0,0 +1,302 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_transaction_opts_clone() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_transaction_opts_clone()
+
+Synopsis
+mongoc_transaction_opt_t *
+mongoc_transaction_opts_clone ( const mongoc_transaction_opt_t * opts )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+Create a copy of a transaction options struct.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_transaction_opts_destroy.html b/libmongoc/1.23.4/mongoc_transaction_opts_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..a0bb1847dbacec7844478c5fee3eaffb3d8bed6b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_transaction_opts_destroy.html
@@ -0,0 +1,297 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_transaction_opts_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_transaction_opts_destroy()
+
+Synopsis
+void
+mongoc_transaction_opts_destroy ( mongoc_transaction_opt_t * opts );
+
+
+Free a mongoc_transaction_opt_t . Does nothing if opts is NULL.
+
+
+Parameters
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_transaction_opts_get_max_commit_time_ms.html b/libmongoc/1.23.4/mongoc_transaction_opts_get_max_commit_time_ms.html
new file mode 100644
index 0000000000000000000000000000000000000000..5d8fc4fb7405f92ecfa063c63dd3ea90210a9148
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_transaction_opts_get_max_commit_time_ms.html
@@ -0,0 +1,297 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_transaction_opts_get_max_commit_time_ms() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_transaction_opts_get_max_commit_time_ms()
+
+
+Parameters
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_transaction_opts_get_read_concern.html b/libmongoc/1.23.4/mongoc_transaction_opts_get_read_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..6f7375b3b6d87d5253d0a8fd2eed321bb51e1160
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_transaction_opts_get_read_concern.html
@@ -0,0 +1,301 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_transaction_opts_get_read_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_transaction_opts_get_read_concern()
+
+
+
+Returns
+A mongoc_read_concern_t that is valid only for the lifetime of opts .
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_transaction_opts_get_read_prefs.html b/libmongoc/1.23.4/mongoc_transaction_opts_get_read_prefs.html
new file mode 100644
index 0000000000000000000000000000000000000000..72096c9fab897c424611f0a8918f3cdf84ee2b1c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_transaction_opts_get_read_prefs.html
@@ -0,0 +1,301 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_transaction_opts_get_read_prefs() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_transaction_opts_get_read_prefs()
+
+
+
+Returns
+A mongoc_read_prefs_t that is valid only for the lifetime of opts .
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_transaction_opts_get_write_concern.html b/libmongoc/1.23.4/mongoc_transaction_opts_get_write_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..cd3147b2142f9a9bba88f15f205b7f981d3974c2
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_transaction_opts_get_write_concern.html
@@ -0,0 +1,301 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_transaction_opts_get_write_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_transaction_opts_get_write_concern()
+
+
+
+Returns
+A mongoc_write_concern_t that is valid only for the lifetime of opts .
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_transaction_opts_new.html b/libmongoc/1.23.4/mongoc_transaction_opts_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..53207729fb85b386fd06ffa3f824780e5e546038
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_transaction_opts_new.html
@@ -0,0 +1,295 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_transaction_opts_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_transaction_opts_new()
+
+Synopsis
+mongoc_transaction_opt_t *
+mongoc_transaction_opts_new ( void );
+
+
+Create a mongoc_transaction_opt_t to configure multi-document transactions.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_transaction_opts_set_max_commit_time_ms.html b/libmongoc/1.23.4/mongoc_transaction_opts_set_max_commit_time_ms.html
new file mode 100644
index 0000000000000000000000000000000000000000..4c5f03ee5568cb458dca11a97f0da0d80dca42f0
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_transaction_opts_set_max_commit_time_ms.html
@@ -0,0 +1,299 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_transaction_opts_set_max_commit_time_ms() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_transaction_opts_set_max_commit_time_ms()
+
+Synopsis
+void
+mongoc_transaction_opts_set_max_commit_time_ms ( mongoc_transaction_opt_t * opts ,
+ int64_t max_commit_time_ms );
+
+
+Configure the transaction’s max commit time, in milliseconds.
+
+
+Parameters
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_transaction_opts_set_read_concern.html b/libmongoc/1.23.4/mongoc_transaction_opts_set_read_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..bf97b7018a4bfa35217af25c127b577cf64c0af7
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_transaction_opts_set_read_concern.html
@@ -0,0 +1,299 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_transaction_opts_set_read_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_transaction_opts_set_read_concern()
+
+Synopsis
+void
+mongoc_transaction_opts_set_read_concern ( mongoc_transaction_opt_t * opts ,
+ const mongoc_read_concern_t * read_concern );
+
+
+Configure the transaction’s read concern. The argument is copied into the struct and can be freed after calling this function.
+
+
+Parameters
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_transaction_opts_set_read_prefs.html b/libmongoc/1.23.4/mongoc_transaction_opts_set_read_prefs.html
new file mode 100644
index 0000000000000000000000000000000000000000..5af2097a77a1925d705842ff87b2ee8fc6135857
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_transaction_opts_set_read_prefs.html
@@ -0,0 +1,299 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_transaction_opts_set_read_prefs() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_transaction_opts_set_read_prefs()
+
+Synopsis
+void
+mongoc_transaction_opts_set_read_prefs ( mongoc_transaction_opt_t * opts ,
+ const mongoc_read_prefs_t * read_prefs );
+
+
+Configure the transaction’s read preference. The argument is copied into the struct and can be freed after calling this function.
+
+
+Parameters
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_transaction_opts_set_write_concern.html b/libmongoc/1.23.4/mongoc_transaction_opts_set_write_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..110f86eded6ccca7524bb191a564e181c83791a0
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_transaction_opts_set_write_concern.html
@@ -0,0 +1,299 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_transaction_opts_set_write_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_transaction_opts_set_write_concern()
+
+Synopsis
+void
+mongoc_transaction_opts_set_write_concern ( mongoc_transaction_opt_t * opts ,
+ const mongoc_write_concern_t * write_concern );
+
+
+Configure the transaction’s write concern. The argument is copied into the struct and can be freed after calling this function.
+
+
+Parameters
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_transaction_state_t.html b/libmongoc/1.23.4/mongoc_transaction_state_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..d5549223b7c7baad290b2f43fca7197cd6152673
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_transaction_state_t.html
@@ -0,0 +1,219 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_transaction_state_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_transaction_state_t
+Constants for transaction states
+
+Synopsis
+typedef enum {
+ MONGOC_TRANSACTION_NONE = 0 ,
+ MONGOC_TRANSACTION_STARTING = 1 ,
+ MONGOC_TRANSACTION_IN_PROGRESS = 2 ,
+ MONGOC_TRANSACTION_COMMITTED = 3 ,
+ MONGOC_TRANSACTION_ABORTED = 4 ,
+} mongoc_transaction_state_t ;
+
+
+
+
+Description
+These constants describe the current transaction state of a session.
+
+
+Flag Values
+
+
+MONGOC_TRANSACTION_NONE
+There is no transaction in progress.
+
+MONGOC_TRANSACTION_STARTING
+A transaction has been started, but no operation has been sent to the server.
+
+MONGOC_TRANSACTION_IN_PROGRESS
+A transaction is in progress.
+
+MONGOC_TRANSACTION_COMMITTED
+The transaction was committed.
+
+MONGOC_TRANSACTION_ABORTED
+The transaction was aborted.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_update_flags_t.html b/libmongoc/1.23.4/mongoc_update_flags_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..125aaa01f228398dab46e9c553fb44d7c35fff6c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_update_flags_t.html
@@ -0,0 +1,216 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_update_flags_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_update_flags_t
+Flags for update operations
+
+Synopsis
+typedef enum {
+ MONGOC_UPDATE_NONE = 0 ,
+ MONGOC_UPDATE_UPSERT = 1 << 0 ,
+ MONGOC_UPDATE_MULTI_UPDATE = 1 << 1 ,
+} mongoc_update_flags_t ;
+
+#define MONGOC_UPDATE_NO_VALIDATE (1U << 31)
+
+
+
+
+Description
+These flags correspond to the MongoDB wire protocol. They may be bitwise or’d together. The allow for modifying the way an update is performed in the MongoDB server.
+
+
+Flag Values
+
+
+MONGOC_UPDATE_NONE
+No update flags set.
+
+MONGOC_UPDATE_UPSERT
+If an upsert should be performed.
+
+MONGOC_UPDATE_MULTI_UPDATE
+If more than a single matching document should be updated. By default only the first document is updated.
+
+MONGOC_UPDATE_NO_VALIDATE
+Do not perform client side BSON validations when performing an update. This is useful if you already know your BSON documents are valid.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_copy.html b/libmongoc/1.23.4/mongoc_uri_copy.html
new file mode 100644
index 0000000000000000000000000000000000000000..3d4b8a9e8fb6807af7e0bfd8fe2b1478d7733c4b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_copy.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_copy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_copy()
+
+Synopsis
+mongoc_uri_t *
+mongoc_uri_copy ( const mongoc_uri_t * uri ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+Copies the entire contents of a URI.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_destroy.html b/libmongoc/1.23.4/mongoc_uri_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..2226a19a2c17a9b649eaf080f31160bf88893c29
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_destroy.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_destroy()
+
+Synopsis
+void
+mongoc_uri_destroy ( mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Frees all resources associated with a uri. Does nothing if uri is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_auth_mechanism.html b/libmongoc/1.23.4/mongoc_uri_get_auth_mechanism.html
new file mode 100644
index 0000000000000000000000000000000000000000..713b72e00c693feb885598c016a9202419560d85
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_auth_mechanism.html
@@ -0,0 +1,226 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_auth_mechanism() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_auth_mechanism()
+
+Synopsis
+const char *
+mongoc_uri_get_auth_mechanism ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Fetches the authMechanism parameter to an URI if provided.
+
+
+Returns
+A string which should not be modified or freed. Returns NULL if the authMechanism parameter was not provided to uri .
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_auth_source.html b/libmongoc/1.23.4/mongoc_uri_get_auth_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..5e06184eb27d744b1fdc43c60fffcd67c339a95f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_auth_source.html
@@ -0,0 +1,226 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_auth_source() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_auth_source()
+
+Synopsis
+const char *
+mongoc_uri_get_auth_source ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Fetches the authSource parameter of an URI if provided.
+
+
+Returns
+A string which should not be modified or freed if the authSource parameter is provided, otherwise NULL .
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_compressors.html b/libmongoc/1.23.4/mongoc_uri_get_compressors.html
new file mode 100644
index 0000000000000000000000000000000000000000..68a189e5182e345c8a55a7c40d7e85b5e24bddd5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_compressors.html
@@ -0,0 +1,215 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_compressors() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_compressors()
+
+Synopsis
+const bson_t *
+mongoc_uri_get_compressors ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Returns a bson document with the enabled compressors as the keys or an empty document if no compressors were provided.
+
+
+Example
+mongoc_client_t * client ;
+mongoc_uri_t * uri ;
+
+uri = mongoc_uri_new ( "mongodb://localhost/?compressors=zlib,snappy,zstd" );
+
+if ( bson_has_field ( mongoc_uri_get_compressors ( uri ), "snappy" )) {
+ /* snappy enabled */
+}
+
+
+
+
+Returns
+A bson_t * which should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_database.html b/libmongoc/1.23.4/mongoc_uri_get_database.html
new file mode 100644
index 0000000000000000000000000000000000000000..51676b692843b80ec77c66f224c9b8e3e25b0c5e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_database.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_database() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_database()
+
+Synopsis
+const char *
+mongoc_uri_get_database ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Fetches the database portion of an URI if provided. This is the portion after the / but before the ? .
+
+
+Returns
+A string which should not be modified or freed or NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_hosts.html b/libmongoc/1.23.4/mongoc_uri_get_hosts.html
new file mode 100644
index 0000000000000000000000000000000000000000..168467d9abd21528449f7a1b6636b6841be04048
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_hosts.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_hosts() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_hosts()
+
+Synopsis
+const mongoc_host_list_t *
+mongoc_uri_get_hosts ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Fetches a linked list of hosts that were defined in the URI (the comma-separated host section).
+
+
+Returns
+A linked list of mongoc_host_list_t structures that should not be modified or freed. Returns NULL if this URI’s scheme is “mongodb+srv://”.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_mechanism_properties.html b/libmongoc/1.23.4/mongoc_uri_get_mechanism_properties.html
new file mode 100644
index 0000000000000000000000000000000000000000..41eb6e46fe3d1787f76af1e698678505fd29bf6e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_mechanism_properties.html
@@ -0,0 +1,251 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_mechanism_properties() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_mechanism_properties()
+
+Synopsis
+bool
+mongoc_uri_get_mechanism_properties ( const mongoc_uri_t * uri ,
+ bson_t * properties /* OUT */ );
+
+
+
+
+
+Description
+Fetches the “authMechanismProperties” options set on this mongoc_uri_t . The out-parameter properties should be an uninitialized, stack-allocated bson_t . It is statically initialized with bson_init_static() to point to the internal data of uri , so its contents must not be modified and it becomes invalid after uri is destroyed.
+
+
+Returns
+If no “authMechanismProperties” have been set on uri , this functions returns false and properties remains uninitialized.
+
+
+Example
+mongoc_uri_t * uri ;
+bson_t props ;
+
+uri = mongoc_uri_new (
+ "mongodb://user%40DOMAIN.COM:password@localhost/?authMechanism=GSSAPI"
+ "&authMechanismProperties=SERVICE_NAME:other,CANONICALIZE_HOST_NAME:true" );
+
+if ( mongoc_uri_get_mechanism_properties ( uri , & props )) {
+ char * json = bson_as_canonical_extended_json ( & props , NULL );
+ printf ( "%s \n " , json );
+ bson_free ( json );
+} else {
+ printf ( "No authMechanismProperties. \n " );
+}
+
+
+This code produces the output:
+ { "SERVICE_NAME" : "other", "CANONICALIZE_HOST_NAME" : "true" }
+
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_option_as_bool.html b/libmongoc/1.23.4/mongoc_uri_get_option_as_bool.html
new file mode 100644
index 0000000000000000000000000000000000000000..bfa335a665d011ee0d454efe2ccf8703579f944e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_option_as_bool.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_option_as_bool() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_option_as_bool()
+
+Synopsis
+bool
+mongoc_uri_get_option_as_bool ( const mongoc_uri_t * uri ,
+ const char * option ,
+ bool fallback );
+
+
+
+
+
+Description
+Returns the value of the URI option if it is set and of the correct type (bool). If not set, or set to an invalid type, returns fallback .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_option_as_int32.html b/libmongoc/1.23.4/mongoc_uri_get_option_as_int32.html
new file mode 100644
index 0000000000000000000000000000000000000000..8566ac376529eb6e13fafd46b7b816aa7daa26c6
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_option_as_int32.html
@@ -0,0 +1,214 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_option_as_int32() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_option_as_int32()
+
+Synopsis
+int32_t
+mongoc_uri_get_option_as_int32 ( const mongoc_uri_t * uri ,
+ const char * option ,
+ int32_t fallback );
+
+
+
+
+
+Description
+Returns the value of the URI option if it is set and of the correct type (integer). Returns fallback if the option is not set, set to an invalid type, or zero.
+Zero is considered “unset”, so URIs can be constructed like so, and still accept default values:
+bson_strdup_printf ( "mongodb://localhost/?connectTimeoutMS=%d" , myvalue )
+
+
+If myvalue is non-zero it is the connection timeout; if it is zero the driver uses the default timeout.
+When reading an option that is an int64, this function will return the value as int32_t . If the value is outside the range of a 32-bit integer, a warning will be emitted and fallback is returned instead.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_option_as_int64.html b/libmongoc/1.23.4/mongoc_uri_get_option_as_int64.html
new file mode 100644
index 0000000000000000000000000000000000000000..ef1ccc6c8311268053766d7068a3908f4994c359
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_option_as_int64.html
@@ -0,0 +1,213 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_option_as_int64() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_option_as_int64()
+
+Synopsis
+int64_t
+mongoc_uri_get_option_as_int64 ( const mongoc_uri_t * uri ,
+ const char * option ,
+ int64_t fallback );
+
+
+
+
+
+Description
+Returns the value of the URI option if it is set and of the correct type (integer). Returns fallback if the option is not set, set to an invalid type, or zero.
+Zero is considered “unset”, so URIs can be constructed like so, and still accept default values:
+bson_strdup_printf ( "mongodb://localhost/?wTimeoutMS=%" PRId64 , myvalue )
+
+
+If myvalue is non-zero it is the write concern timeout; if it is zero the driver uses the default timeout.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_option_as_utf8.html b/libmongoc/1.23.4/mongoc_uri_get_option_as_utf8.html
new file mode 100644
index 0000000000000000000000000000000000000000..53501f32c2de0cceeebdedb5874b03c6c4b25c4b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_option_as_utf8.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_option_as_utf8() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_option_as_utf8()
+
+Synopsis
+const char *
+mongoc_uri_get_option_as_utf8 ( const mongoc_uri_t * uri ,
+ const char * option ,
+ const char * fallback );
+
+
+
+
+
+Description
+Returns the value of the URI option if it is set and of the correct type (string). This value is a pointer into the URI’s internal buffer, and is only valid until the URI is modified or freed. If the option is not set, or set to an invalid type, returns fallback .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_options.html b/libmongoc/1.23.4/mongoc_uri_get_options.html
new file mode 100644
index 0000000000000000000000000000000000000000..60c819332c06a8df2d51a2b530459b6638d62e2d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_options.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_options() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_options()
+
+Synopsis
+const bson_t *
+mongoc_uri_get_options ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Fetches a bson document containing all of the options provided after the ? of a URI.
+
+
+Returns
+A bson_t which should not be modified or freed if uri has options provided, otherwise NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_password.html b/libmongoc/1.23.4/mongoc_uri_get_password.html
new file mode 100644
index 0000000000000000000000000000000000000000..33e4afcbb166299111659745169367b6f08ecf1f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_password.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_password() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_password()
+
+Synopsis
+const char *
+mongoc_uri_get_password ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Fetches the password portion of an URI.
+
+
+Returns
+A string which should not be modified or freed if uri has a password specified, otherwise NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_read_concern.html b/libmongoc/1.23.4/mongoc_uri_get_read_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..2ad5184e8670425a45433bfb0640d4a41e6ae57c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_read_concern.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_read_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_read_concern()
+
+Synopsis
+const mongoc_read_concern_t *
+mongoc_uri_get_read_concern ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Fetches a read concern that is owned by the URI instance. This read concern is configured based on URI parameters.
+
+
+Returns
+Returns a mongoc_read_concern_t that should not be modified or freed if a read concern is provided to uri , otherwise NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_read_prefs.html b/libmongoc/1.23.4/mongoc_uri_get_read_prefs.html
new file mode 100644
index 0000000000000000000000000000000000000000..d3608eb328be13707ddca0459b5509cb21845c0c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_read_prefs.html
@@ -0,0 +1,210 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_read_prefs() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_read_prefs()
+
+Synopsis
+const bson_t *
+mongoc_uri_get_read_prefs ( const mongoc_uri_t * uri );
+
+
+
+
+
+
+Description
+Fetches a bson document containing read preference tag information from a URI. Note that this does not include the read preference mode.
+
+
+Returns
+Returns a bson document that should not be modified or freed if uri has read preferences, otherwise NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_read_prefs_t.html b/libmongoc/1.23.4/mongoc_uri_get_read_prefs_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..431db3d1b10d3bfb00ce49977baaad18ff0818ac
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_read_prefs_t.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_read_prefs_t() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_read_prefs_t()
+
+Synopsis
+const mongoc_read_prefs_t *
+mongoc_uri_get_read_prefs_t ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Fetches a read preference that is owned by the URI instance. This read preference concern is configured based on URI parameters.
+
+
+Returns
+Returns a mongoc_read_prefs_t that should not be modified or freed if uri has read preferences, otherwise NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_replica_set.html b/libmongoc/1.23.4/mongoc_uri_get_replica_set.html
new file mode 100644
index 0000000000000000000000000000000000000000..653893442cc408465b36f9905806e9c4d7a0298b
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_replica_set.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_replica_set() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_replica_set()
+
+Synopsis
+const char *
+mongoc_uri_get_replica_set ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Fetches the replicaSet parameter of an URI.
+
+
+Returns
+Returns a string which should not be modified or freed. Returns NULL if the replicaSet parameter was not provided to uri .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_service.html b/libmongoc/1.23.4/mongoc_uri_get_service.html
new file mode 100644
index 0000000000000000000000000000000000000000..d617d6428949dd95c3450026d1f3bb6d3a978ecc
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_service.html
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_service() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_service()
+
+Synopsis
+const char *
+mongoc_uri_get_service ( const mongoc_uri_t * uri )
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_uri_get_srv_hostname );
+
+
+
+
+
+Deprecated
+This function is deprecated and should not be used in new code.
+Please use mongoc_uri_get_srv_hostname() instead.
+Returns the SRV host and domain name of a MongoDB URI.
+
+
+Returns
+A string if this URI’s scheme is “mongodb+srv://”, or NULL if the scheme is “mongodb://”.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_srv_hostname.html b/libmongoc/1.23.4/mongoc_uri_get_srv_hostname.html
new file mode 100644
index 0000000000000000000000000000000000000000..bba5f523bc45d76217f877d327a031a303b708b1
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_srv_hostname.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_srv_hostname() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_srv_hostname()
+
+Synopsis
+const char *
+mongoc_uri_get_srv_hostname ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Returns the SRV host and domain name of a MongoDB URI.
+
+
+Returns
+A string if this URI’s scheme is “mongodb+srv://”, or NULL if the scheme is “mongodb://”.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_srv_service_name.html b/libmongoc/1.23.4/mongoc_uri_get_srv_service_name.html
new file mode 100644
index 0000000000000000000000000000000000000000..469e4bc8bf07f33126561db6bfb558765140b795
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_srv_service_name.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_srv_service_name() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_srv_service_name()
+
+Synopsis
+const char *
+mongoc_uri_get_srv_service_name ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Returns the SRV service name of a MongoDB URI.
+
+
+Returns
+A string corresponding to the value of the srvServiceName URI option if present. Otherwise, the default value “mongodb”.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_ssl.html b/libmongoc/1.23.4/mongoc_uri_get_ssl.html
new file mode 100644
index 0000000000000000000000000000000000000000..1295261a08e5311b8e1c2282b280b99db34657d1
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_ssl.html
@@ -0,0 +1,211 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_ssl() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_ssl()
+
+Synopsis
+bool
+mongoc_uri_get_ssl ( const mongoc_uri_t * uri )
+ BSON_GNUC_DEPRECATED_FOR ( mongoc_uri_get_tls );
+
+
+
+
+Deprecated
+
+
Warning
+
This function is deprecated and should not be used in new code.
+
+Please use mongoc_uri_get_tls() instead.
+
+
+
+Description
+Fetches a boolean indicating if TLS was specified for use in the URI.
+
+
+Returns
+Returns a boolean, true indicating that TLS should be used. This returns true if any TLS option is specified.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_string.html b/libmongoc/1.23.4/mongoc_uri_get_string.html
new file mode 100644
index 0000000000000000000000000000000000000000..677580493317275ab0fdc06e1c785c648b34e3b5
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_string.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_string() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_string()
+
+Synopsis
+const char *
+mongoc_uri_get_string ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Fetches the URI as a string.
+
+
+Returns
+Returns a string which should not be modified or freed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_tls.html b/libmongoc/1.23.4/mongoc_uri_get_tls.html
new file mode 100644
index 0000000000000000000000000000000000000000..1047de2a584c3a470586a1bdc28315c3851b8457
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_tls.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_tls() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_tls()
+
+Synopsis
+bool
+mongoc_uri_get_tls ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Fetches a boolean indicating if TLS was specified for use in the URI.
+
+
+Returns
+Returns a boolean, true indicating that TLS should be used. This returns true if any TLS option is specified.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_username.html b/libmongoc/1.23.4/mongoc_uri_get_username.html
new file mode 100644
index 0000000000000000000000000000000000000000..5dd75469769f15ed74a8153b49cc84a20c24052c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_username.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_username() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_username()
+
+Synopsis
+const char *
+mongoc_uri_get_username ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Fetches the username portion of a URI.
+
+
+Returns
+Returns a string which should not be modified or freed if uri has a username provided, otherwise NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_get_write_concern.html b/libmongoc/1.23.4/mongoc_uri_get_write_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..b1647f5243bd89bbda573f76395253fedbf06086
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_get_write_concern.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_get_write_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_get_write_concern()
+
+Synopsis
+const mongoc_write_concern_t *
+mongoc_uri_get_write_concern ( const mongoc_uri_t * uri );
+
+
+
+
+
+Description
+Fetches a write concern that is owned by the URI instance. This write concern is configured based on URI parameters.
+
+
+Returns
+Returns a mongoc_write_concern_t that should not be modified or freed if uri has a write concern provided, otherwise NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_has_option.html b/libmongoc/1.23.4/mongoc_uri_has_option.html
new file mode 100644
index 0000000000000000000000000000000000000000..491e979357242b4ce8acecff09ef5333f528dc87
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_has_option.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_has_option() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_has_option()
+
+Synopsis
+bool
+mongoc_uri_has_option ( const mongoc_uri_t * uri , const char * option );
+
+
+
+
+
+Description
+Returns true if the option was present in the initial MongoDB URI.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_new.html b/libmongoc/1.23.4/mongoc_uri_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..c3b542baa54604b4e53e08eabd4dbdc600b3efec
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_new.html
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_new()
+
+Synopsis
+mongoc_uri_t *
+mongoc_uri_new ( const char * uri_string ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+
+Returns
+A newly allocated mongoc_uri_t if successful. Otherwise NULL , using
+MONGOC_WARNING on error.
+
+
Warning
+
Failure to handle the result of this function is a programming error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_new_for_host_port.html b/libmongoc/1.23.4/mongoc_uri_new_for_host_port.html
new file mode 100644
index 0000000000000000000000000000000000000000..b9a0e70ffd8ca03c9916bf40e781c28e3a029c44
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_new_for_host_port.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_new_for_host_port() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_new_for_host_port()
+
+Synopsis
+mongoc_uri_t *
+mongoc_uri_new_for_host_port ( const char * hostname , uint16_t port );
+
+
+
+
+
+Description
+Creates a new mongoc_uri_t based on the hostname and port provided.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_new_with_error.html b/libmongoc/1.23.4/mongoc_uri_new_with_error.html
new file mode 100644
index 0000000000000000000000000000000000000000..807fbfb5bbc61d5825443f5a7e8c0a853a4f1b62
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_new_with_error.html
@@ -0,0 +1,222 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_new_with_error() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_new_with_error()
+
+Synopsis
+mongoc_uri_t *
+mongoc_uri_new_with_error ( const char * uri_string ,
+ bson_error_t * error ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+Parses a string containing a MongoDB style URI connection string.
+
+
+Returns
+A newly allocated mongoc_uri_t if successful. Otherwise NULL
+populating error with the error description.
+
+
Warning
+
Failure to handle the result of this function is a programming error.
+
+
+
+Examples
+Examples of some valid MongoDB connection strings can be seen below.
+"mongodb://localhost/"
+"mongodb://localhost/?replicaSet=myreplset"
+"mongodb://myuser:mypass@localhost/"
+"mongodb://kerberosuser%40EXAMPLE.COM@example.com/?authMechanism=GSSAPI"
+"mongodb://[::1]:27017/"
+"mongodb://10.0.0.1:27017,10.0.0.1:27018,[::1]:27019/?tls=true"
+"mongodb://%2Ftmp%2Fmongodb-27017.sock"
+"mongodb://user:pass@%2Ftmp%2Fmongodb-27017.sock"
+"mongodb://localhost,[::1]/mydb?authSource=mydb"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_option_is_bool.html b/libmongoc/1.23.4/mongoc_uri_option_is_bool.html
new file mode 100644
index 0000000000000000000000000000000000000000..9998e89b4108b6af23440188abb774923dc84063
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_option_is_bool.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_option_is_bool() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_option_is_bool()
+
+Synopsis
+bool
+mongoc_uri_option_is_bool ( const char * option );
+
+
+
+
+
+Description
+Returns true if the option is a known MongoDB URI option of boolean type. For example, “tls=false” is a valid MongoDB URI option, so mongoc_uri_option_is_bool ("tls") is true.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_option_is_int32.html b/libmongoc/1.23.4/mongoc_uri_option_is_int32.html
new file mode 100644
index 0000000000000000000000000000000000000000..9ccc62878acc07fb58f9cee8d24db73714eadd50
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_option_is_int32.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_option_is_int32() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_option_is_int32()
+
+Synopsis
+bool
+mongoc_uri_option_is_int32 ( const char * option );
+
+
+
+
+
+Description
+Returns true if the option is a known MongoDB URI option of integer type. For example, “zlibCompressionLevel=5” is a valid integer MongoDB URI option, so mongoc_uri_option_is_int32 ("zlibCompressionLevel") is true. This will also return true for all 64-bit integer options.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_option_is_int64.html b/libmongoc/1.23.4/mongoc_uri_option_is_int64.html
new file mode 100644
index 0000000000000000000000000000000000000000..74fb12aa61afeaf8b40bc71fa9a4b7275b64fc05
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_option_is_int64.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_option_is_int64() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_option_is_int64()
+
+Synopsis
+bool
+mongoc_uri_option_is_int64 ( const char * option );
+
+
+
+
+
+Description
+Returns true if the option is a known MongoDB URI option of 64-bit integer type. For example, “wTimeoutMS=100” is a valid 64-bit integer MongoDB URI option, so mongoc_uri_option_is_int64 ("wTimeoutMS") is true.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_option_is_utf8.html b/libmongoc/1.23.4/mongoc_uri_option_is_utf8.html
new file mode 100644
index 0000000000000000000000000000000000000000..bc4ba2078f5cf9f9b3edff847d6901125dfef21e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_option_is_utf8.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_option_is_utf8() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_option_is_utf8()
+
+Synopsis
+bool
+mongoc_uri_option_is_utf8 ( const char * option );
+
+
+
+
+
+Description
+Returns true if the option is a known MongoDB URI option of string type. For example, “replicaSet=my_rs” is a valid MongoDB URI option, so mongoc_uri_option_is_utf8 ("replicaSet") is true.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_set_auth_mechanism.html b/libmongoc/1.23.4/mongoc_uri_set_auth_mechanism.html
new file mode 100644
index 0000000000000000000000000000000000000000..4fc3f5faca73c5034ec64a709bc5f457079883ae
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_set_auth_mechanism.html
@@ -0,0 +1,228 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_set_auth_mechanism() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_set_auth_mechanism()
+
+Synopsis
+bool
+mongoc_uri_set_auth_mechanism ( mongoc_uri_t * uri , const char * value );
+
+
+
+
+
+Description
+Sets the “authMechanism” URI option, such as “SCRAM-SHA-1” or “GSSAPI”, after the URI has been parsed from a string.
+Updates the option in-place if already set, otherwise appends it to the URI’s bson_t of options.
+
+
+Returns
+Returns false if the option cannot be set, for example if value is not valid UTF-8.
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_set_auth_source.html b/libmongoc/1.23.4/mongoc_uri_set_auth_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..f47d80fcaab70f2e1485dbb157dc06e68feace05
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_set_auth_source.html
@@ -0,0 +1,228 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_set_auth_source() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_set_auth_source()
+
+Synopsis
+bool
+mongoc_uri_set_auth_source ( mongoc_uri_t * uri , const char * value );
+
+
+
+
+
+Description
+Sets the “authSource” URI option, after the URI has been parsed from a string.
+Updates the option in-place if already set, otherwise appends it to the URI’s bson_t of options.
+
+
+Returns
+Returns false if the option cannot be set, for example if value is not valid UTF-8.
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_set_compressors.html b/libmongoc/1.23.4/mongoc_uri_set_compressors.html
new file mode 100644
index 0000000000000000000000000000000000000000..d320ddf6454000974153962324228c4bf1a52290
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_set_compressors.html
@@ -0,0 +1,218 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_set_compressors() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_set_compressors()
+
+Synopsis
+bool
+mongoc_uri_set_compressors ( mongoc_uri_t * uri , const char * compressors );
+
+
+
+
+
+Description
+Sets the URI’s compressors, after the URI has been parsed from a string.
+Will overwrite any previously set value.
+
+
+Example
+mongoc_client_t * client ;
+mongoc_uri_t * uri ;
+
+uri = mongoc_uri_new ( "mongodb://localhost/" );
+mongoc_uri_set_compressors ( uri , "snappy,zlib,zstd" );
+mongoc_client_new_from_uri ( uri );
+/* Snappy & zlib & zstd compressors are enabled */
+
+
+
+
+Returns
+Returns false if the option cannot be set, for example if compressors is not valid UTF-8.
+Logs a warning to stderr with the MONGOC_WARNING macro
+if compressor is not available.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_set_database.html b/libmongoc/1.23.4/mongoc_uri_set_database.html
new file mode 100644
index 0000000000000000000000000000000000000000..e0922cdf22915a461e19611ffdb2a1b6c93571b4
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_set_database.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_set_database() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_set_database()
+
+Synopsis
+bool
+mongoc_uri_set_database ( mongoc_uri_t * uri , const char * database );
+
+
+
+
+
+Description
+Sets the URI’s database, after the URI has been parsed from a string.
+The driver authenticates to this database if the connection string includes authentication credentials. This database is also the return value of mongoc_client_get_default_database() .
+
+
+Returns
+Returns false if the option cannot be set, for example if database is not valid UTF-8.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_set_mechanism_properties.html b/libmongoc/1.23.4/mongoc_uri_set_mechanism_properties.html
new file mode 100644
index 0000000000000000000000000000000000000000..30fb856071b8b96f45e0668f3a453784c6dff478
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_set_mechanism_properties.html
@@ -0,0 +1,247 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_set_mechanism_properties() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_set_mechanism_properties()
+
+Synopsis
+bool
+mongoc_uri_set_mechanism_properties ( mongoc_uri_t * uri ,
+ const bson_t * properties );
+
+
+
+
+
+Description
+Replaces all the options in URI’s “authMechanismProperties” after the URI has been parsed from a string.
+
+
+Returns
+Returns false if the option cannot be set, for example if properties is not valid BSON data.
+
+
+Example
+mongoc_uri_t * uri ;
+bson_t props = BSON_INITIALIZER ;
+
+uri = mongoc_uri_new (
+ "mongodb://user%40DOMAIN.COM:password@localhost/?authMechanism=GSSAPI"
+ "&authMechanismProperties=SERVICE_NAME:other,CANONICALIZE_HOST_NAME:true" );
+
+/* replace all options: replace service name "other" with "my_service", unset
+ * "CANONICALIZE_HOST_NAME" and accept its default.
+ */
+BSON_APPEND_UTF8 ( & props , "SERVICE_NAME" , "my_service" );
+mongoc_uri_set_mechanism_properties ( uri , & props );
+
+bson_destroy ( & props );
+
+
+
+
See also
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_set_option_as_bool.html b/libmongoc/1.23.4/mongoc_uri_set_option_as_bool.html
new file mode 100644
index 0000000000000000000000000000000000000000..aa453375dbdd611cbd30f589721f7e060592b0ba
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_set_option_as_bool.html
@@ -0,0 +1,208 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_set_option_as_bool() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_set_option_as_bool()
+
+Synopsis
+bool
+mongoc_uri_set_option_as_bool ( const mongoc_uri_t * uri ,
+ const char * option ,
+ bool value );
+
+
+
+
+
+Description
+Sets an individual URI option, after the URI has been parsed from a string.
+Only known options of type bool can be set.
+Updates the option in-place if already set, otherwise appends it to the URI’s bson_t of options.
+
+
+Returns
+True if successfully set (the named option is a known option of type bool).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_set_option_as_int32.html b/libmongoc/1.23.4/mongoc_uri_set_option_as_int32.html
new file mode 100644
index 0000000000000000000000000000000000000000..fed342a0e9d817c084d8e92b90fd917da9428bd2
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_set_option_as_int32.html
@@ -0,0 +1,214 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_set_option_as_int32() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_set_option_as_int32()
+
+Synopsis
+bool
+mongoc_uri_set_option_as_int32 ( const mongoc_uri_t * uri ,
+ const char * option ,
+ int32_t value );
+
+
+
+
+
+Description
+Sets an individual URI option, after the URI has been parsed from a string.
+Only known options of type integer can be set. Some integer options, such as minHeartbeatFrequencyMS , have additional constraints.
+Updates the option in-place if already set, otherwise appends it to the URI’s bson_t of options.
+
+
+Returns
+True if successfully set (the named option is a known option of type int32 or int64).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_set_option_as_int64.html b/libmongoc/1.23.4/mongoc_uri_set_option_as_int64.html
new file mode 100644
index 0000000000000000000000000000000000000000..74d6859507c797899f2ad4e61cdb82837ee43ff7
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_set_option_as_int64.html
@@ -0,0 +1,217 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_set_option_as_int64() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_set_option_as_int64()
+
+Synopsis
+bool
+mongoc_uri_set_option_as_int64 ( const mongoc_uri_t * uri ,
+ const char * option ,
+ int64_t value );
+
+
+
+
+
+Description
+Sets an individual URI option, after the URI has been parsed from a string.
+Only known options of type int32 or int64 can be set. For 32-bit integer options, the function returns false when trying to set a 64-bit value that exceeds the range of an int32_t . Values that fit into an int32_t will be set correctly. In both cases, a warning will be emitted.
+Updates the option in-place if already set, otherwise appends it to the URI’s bson_t of options.
+
+
+Returns
+True if successfully set (the named option is a known option of type int64).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_set_option_as_utf8.html b/libmongoc/1.23.4/mongoc_uri_set_option_as_utf8.html
new file mode 100644
index 0000000000000000000000000000000000000000..b63e208129fa564ac6205a4ddd270ed9217d191d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_set_option_as_utf8.html
@@ -0,0 +1,208 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_set_option_as_utf8() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_set_option_as_utf8()
+
+Synopsis
+bool
+mongoc_uri_set_option_as_utf8 ( const mongoc_uri_t * uri ,
+ const char * option ,
+ utf8 value );
+
+
+
+
+
+Description
+Sets an individual URI option, after the URI has been parsed from a string.
+Only known string-type options can be set.
+Updates the option in-place if already set, otherwise appends it to the URI’s bson_t of options.
+
+
+Returns
+True if successfully set (the named option is a known option of string type).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_set_password.html b/libmongoc/1.23.4/mongoc_uri_set_password.html
new file mode 100644
index 0000000000000000000000000000000000000000..a52f7194d62196d8a4525849cb5824b4d834e57a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_set_password.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_set_password() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_set_password()
+
+Synopsis
+bool
+mongoc_uri_set_password ( mongoc_uri_t * uri , const char * password );
+
+
+
+
+
+Description
+Sets the URI’s password, after the URI has been parsed from a string. The driver authenticates with this password if the username is also set.
+
+
+Returns
+Returns false if the option cannot be set, for example if password is not valid UTF-8.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_set_read_concern.html b/libmongoc/1.23.4/mongoc_uri_set_read_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..3528011efec7dcb9ccce0d7e20aab56f2c6b5125
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_set_read_concern.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_set_read_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_set_read_concern()
+
+Synopsis
+void
+mongoc_uri_set_read_concern ( mongoc_uri_t * uri ,
+ const mongoc_read_concern_t * rc );
+
+
+
+
+
+Description
+Sets a MongoDB URI’s read concern option, after the URI has been parsed from a string.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_set_read_prefs_t.html b/libmongoc/1.23.4/mongoc_uri_set_read_prefs_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..69d44329984b61a3042ee5512471284e815e2d8e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_set_read_prefs_t.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_set_read_prefs_t() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_set_read_prefs_t()
+
+Synopsis
+void
+mongoc_uri_set_read_prefs_t ( mongoc_uri_t * uri ,
+ const mongoc_read_prefs_t * prefs );
+
+
+
+
+
+Description
+Sets a MongoDB URI’s read preferences, after the URI has been parsed from a string.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_set_username.html b/libmongoc/1.23.4/mongoc_uri_set_username.html
new file mode 100644
index 0000000000000000000000000000000000000000..af7e78d574cccb37a0e79f92517956a3638af438
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_set_username.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_set_username() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_set_username()
+
+Synopsis
+bool
+mongoc_uri_set_username ( mongoc_uri_t * uri , const char * username );
+
+
+
+
+
+Description
+Sets the URI’s username, after the URI has been parsed from a string. The driver authenticates with this username if the password is also set.
+
+
+Returns
+Returns false if the option cannot be set, for example if username is not valid UTF-8.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_set_write_concern.html b/libmongoc/1.23.4/mongoc_uri_set_write_concern.html
new file mode 100644
index 0000000000000000000000000000000000000000..ea0ede84e6c7a8f401af80cd1b5faaecaaf966eb
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_set_write_concern.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_set_write_concern() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_set_write_concern()
+
+Synopsis
+void
+mongoc_uri_set_write_concern ( mongoc_uri_t * uri ,
+ const mongoc_write_concern_t * wc );
+
+
+
+
+
+Description
+Sets a MongoDB URI’s write concern option, after the URI has been parsed from a string.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_t.html b/libmongoc/1.23.4/mongoc_uri_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..214b47cf8622766904233027a6914a0d3cc7ef59
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_t.html
@@ -0,0 +1,607 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_t
+
+Synopsis
+typedef struct _mongoc_uri_t mongoc_uri_t ;
+
+
+
+
+Description
+mongoc_uri_t provides an abstraction on top of the MongoDB connection URI format. It provides standardized parsing as well as convenience methods for extracting useful information such as replica hosts or authorization information.
+See Connection String URI Reference on the MongoDB website for more information.
+
+
+
+Replica Set Example
+To describe a connection to a replica set named ‘test’ with the following mongod hosts:
+
+You would use a connection string that resembles the following.
+ mongodb://db1.example.com,db2.example.com:2500/?replicaSet=test
+
+
+
+
+SRV Example
+If you have configured an SRV record with a name like “_mongodb._tcp.server.example.com” whose records are a list of one or more MongoDB server hostnames, use a connection string like this:
+uri = mongoc_uri_new ( "mongodb+srv://server.example.com/?replicaSet=rs&appName=applicationName" );
+
+
+The driver prefixes the service name with “_mongodb._tcp.”, then performs a DNS SRV query to resolve the service name to one or more hostnames. If this query succeeds, the driver performs a DNS TXT query on the service name (without the “_mongodb._tcp” prefix) for additional URI options configured as TXT records.
+On Unix, the MongoDB C Driver relies on libresolv to look up SRV and TXT records. If libresolv is unavailable, then using a “mongodb+srv” URI will cause an error. If your libresolv lacks res_nsearch then the driver will fall back to res_search , which is not thread-safe.
+
+
+IPv4 and IPv6
+If connecting to a hostname that has both IPv4 and IPv6 DNS records, the behavior follows RFC-6555 . A connection to the IPv6 address is attempted first. If IPv6 fails, then a connection is attempted to the IPv4 address. If the connection attempt to IPv6 does not complete within 250ms, then IPv4 is tried in parallel. Whichever succeeds connection first cancels the other. The successful DNS result is cached for 10 minutes.
+As a consequence, attempts to connect to a mongod only listening on IPv4 may be delayed if there are both A (IPv4) and AAAA (IPv6) DNS records associated with the host.
+To avoid a delay, configure hostnames to match the MongoDB configuration. That is, only create an A record if the mongod is only listening on IPv4.
+
+
+Connection Options
+
+
+Constant
+Key
+Default
+Description
+
+
+
+MONGOC_URI_RETRYREADS
+retryreads
+true
+If “true” and the server is a MongoDB 3.6+ standalone, replica set, or sharded cluster, the driver safely retries a read that failed due to a network error or replica set failover.
+
+MONGOC_URI_RETRYWRITES
+retrywrites
+true if driver built w/ TLS
+If “true” and the server is a MongoDB 3.6+ replica set or sharded cluster, the driver safely retries a write that failed due to a network error or replica set failover. Only inserts, updates of single documents, or deletes of single
+documents are retried.
+
+MONGOC_URI_APPNAME
+appname
+Empty (no appname)
+The client application name. This value is used by MongoDB when it logs connection information and profile information, such as slow queries.
+
+MONGOC_URI_TLS
+tls
+Empty (not set, same as false)
+{true|false}, indicating if TLS must be used. (See also mongoc_client_set_ssl_opts() and mongoc_client_pool_set_ssl_opts() .)
+
+MONGOC_URI_COMPRESSORS
+compressors
+Empty (no compressors)
+Comma separated list of compressors, if any, to use to compress the wire protocol messages. Snappy, zlib, and zstd are optional build time dependencies, and enable the “snappy”, “zlib”, and “zstd” values respectively.
+
+MONGOC_URI_CONNECTTIMEOUTMS
+connecttimeoutms
+10,000 ms (10 seconds)
+This setting applies to new server connections. It is also used as the socket timeout for server discovery and monitoring operations.
+
+MONGOC_URI_SOCKETTIMEOUTMS
+sockettimeoutms
+300,000 ms (5 minutes)
+The time in milliseconds to attempt to send or receive on a socket before the attempt times out.
+
+MONGOC_URI_REPLICASET
+replicaset
+Empty (no replicaset)
+The name of the Replica Set that the driver should connect to.
+
+MONGOC_URI_ZLIBCOMPRESSIONLEVEL
+zlibcompressionlevel
+-1
+When the MONGOC_URI_COMPRESSORS includes “zlib” this options configures the zlib compression level, when the zlib compressor is used to compress client data.
+
+MONGOC_URI_LOADBALANCED
+loadbalanced
+false
+If true, this indicates the driver is connecting to a MongoDB cluster behind a load balancer.
+
+MONGOC_URI_SRVMAXHOSTS
+srvmaxhosts
+0
+If zero, the number of hosts in DNS results is unlimited. If greater than zero, the number of hosts in DNS results is limited to being less than or equal to the given value.
+
+
+
+Setting any of the *timeoutMS options above to 0 will be interpreted as “use the default value”.
+
+
+Authentication Options
+
+
+Constant
+Key
+Description
+
+
+
+MONGOC_URI_AUTHMECHANISM
+authmechanism
+Specifies the mechanism to use when authenticating as the provided user. See Authentication for supported values.
+
+MONGOC_URI_AUTHMECHANISMPROPERTIES
+authmechanismproperties
+Certain authentication mechanisms have additional options that can be configured. These options should be provided as comma separated option_key:option_value pair and provided as authMechanismProperties. Specifying the same option_key multiple times has undefined behavior.
+
+MONGOC_URI_AUTHSOURCE
+authsource
+The authSource defines the database that should be used to authenticate to. It is unnecessary to provide this option the database name is the same as the database used in the URI.
+
+
+
+
+Mechanism Properties
+
+
+Constant
+Key
+Description
+
+
+
+MONGOC_URI_CANONICALIZEHOSTNAME
+canonicalizehostname
+Use the canonical hostname of the service, rather than its configured alias, when authenticating with Cyrus-SASL Kerberos.
+
+MONGOC_URI_GSSAPISERVICENAME
+gssapiservicename
+Use alternative service name. The default is mongodb .
+
+
+
+
+
+
+TLS Options
+
+
+Constant
+Key
+Description
+
+
+
+MONGOC_URI_TLS
+tls
+{true|false}, indicating if TLS must be used.
+
+MONGOC_URI_TLSCERTIFICATEKEYFILE
+tlscertificatekeyfile
+Path to PEM formatted Private Key, with its Public Certificate concatenated at the end.
+
+MONGOC_URI_TLSCERTIFICATEKEYFILEPASSWORD
+tlscertificatekeypassword
+The password, if any, to use to unlock encrypted Private Key.
+
+MONGOC_URI_TLSCAFILE
+tlscafile
+One, or a bundle of, Certificate Authorities whom should be considered to be trusted.
+
+MONGOC_URI_TLSALLOWINVALIDCERTIFICATES
+tlsallowinvalidcertificates
+Accept and ignore certificate verification errors (e.g. untrusted issuer, expired, etc.)
+
+MONGOC_URI_TLSALLOWINVALIDHOSTNAMES
+tlsallowinvalidhostnames
+Ignore hostname verification of the certificate (e.g. Man In The Middle, using valid certificate, but issued for another hostname)
+
+MONGOC_URI_TLSINSECURE
+tlsinsecure
+{true|false}, indicating if insecure TLS options should be used. Currently this implies MONGOC_URI_TLSALLOWINVALIDCERTIFICATES and MONGOC_URI_TLSALLOWINVALIDHOSTNAMES.
+
+MONGOC_URI_TLSDISABLECERTIFICATEREVOCATIONCHECK
+tlsdisablecertificaterevocationcheck
+{true|false}, indicates if revocation checking (CRL / OCSP) should be disabled.
+
+MONGOC_URI_TLSDISABLEOCSPENDPOINTCHECK
+tlsdisableocspendpointcheck
+{true|false}, indicates if OCSP responder endpoints should not be requested when an OCSP response is not stapled.
+
+
+
+See Configuring TLS for details about these options and about building libmongoc with TLS support.
+
+
+Deprecated SSL Options
+The following options have been deprecated and may be removed from future releases of libmongoc.
+
+
+Constant
+Key
+Deprecated For
+Key
+
+
+
+MONGOC_URI_SSL
+ssl
+MONGOC_URI_TLS
+tls
+
+MONGOC_URI_SSLCLIENTCERTIFICATEKEYFILE
+sslclientcertificatekeyfile
+MONGOC_URI_TLSCERTIFICATEKEYFILE
+tlscertificatekeyfile
+
+MONGOC_URI_SSLCLIENTCERTIFICATEKEYPASSWORD
+sslclientcertificatekeypassword
+MONGOC_URI_TLSCERTIFICATEKEYFILEPASSWORD
+tlscertificatekeypassword
+
+MONGOC_URI_SSLCERTIFICATEAUTHORITYFILE
+sslcertificateauthorityfile
+MONGOC_URI_TLSCAFILE
+tlscafile
+
+MONGOC_URI_SSLALLOWINVALIDCERTIFICATES
+sslallowinvalidcertificates
+MONGOC_URI_TLSALLOWINVALIDCERTIFICATES
+tlsallowinvalidcertificates
+
+MONGOC_URI_SSLALLOWINVALIDHOSTNAMES
+sslallowinvalidhostnames
+MONGOC_URI_TLSALLOWINVALIDHOSTNAMES
+tlsallowinvalidhostnames
+
+
+
+
+
+Server Discovery, Monitoring, and Selection Options
+Clients in a mongoc_client_pool_t share a topology scanner that runs on a background thread. The thread wakes every heartbeatFrequencyMS (default 10 seconds) to scan all MongoDB servers in parallel. Whenever an application operation requires a server that is not known–for example, if there is no known primary and your application attempts an insert–the thread rescans all servers every half-second. In this situation the pooled client waits up to serverSelectionTimeoutMS (default 30 seconds) for the thread to find a server suitable for the operation, then returns an error with domain MONGOC_ERROR_SERVER_SELECTION .
+Technically, the total time an operation may wait while a pooled client scans the topology is controlled both by serverSelectionTimeoutMS and connectTimeoutMS . The longest wait occurs if the last scan begins just at the end of the selection timeout, and a slow or down server requires the full connection timeout before the client gives up.
+A non-pooled client is single-threaded. Every heartbeatFrequencyMS , it blocks the next application operation while it does a parallel scan. This scan takes as long as needed to check the slowest server: roughly connectTimeoutMS . Therefore the default heartbeatFrequencyMS for single-threaded clients is greater than for pooled clients: 60 seconds.
+By default, single-threaded (non-pooled) clients scan only once when an operation requires a server that is not known. If you attempt an insert and there is no known primary, the client checks all servers once trying to find it, then succeeds or returns an error with domain MONGOC_ERROR_SERVER_SELECTION . But if you set serverSelectionTryOnce to “false”, the single-threaded client loops, checking all servers every half-second, until serverSelectionTimeoutMS .
+The total time an operation may wait for a single-threaded client to scan the topology is determined by connectTimeoutMS in the try-once case, or serverSelectionTimeoutMS and connectTimeoutMS if serverSelectionTryOnce is set “false”.
+
+
+Constant
+Key
+Description
+
+
+
+MONGOC_URI_HEARTBEATFREQUENCYMS
+heartbeatfrequencyms
+The interval between server monitoring checks. Defaults to 10,000ms (10 seconds) in pooled (multi-threaded) mode, 60,000ms (60 seconds) in non-pooled mode (single-threaded).
+
+MONGOC_URI_SERVERSELECTIONTIMEOUTMS
+serverselectiontimeoutms
+A timeout in milliseconds to block for server selection before throwing an exception. The default is 30,0000ms (30 seconds).
+
+MONGOC_URI_SERVERSELECTIONTRYONCE
+serverselectiontryonce
+If “true”, the driver scans the topology exactly once after server selection fails, then either selects a server or returns an error. If it is false, then the driver repeatedly searches for a suitable server for up to serverSelectionTimeoutMS milliseconds (pausing a half second between attempts). The default for serverSelectionTryOnce is “false” for pooled clients, otherwise “true”. Pooled clients ignore serverSelectionTryOnce; they signal the thread to rescan the topology every half-second until serverSelectionTimeoutMS expires.
+
+MONGOC_URI_SOCKETCHECKINTERVALMS
+socketcheckintervalms
+Only applies to single threaded clients. If a socket has not been used within this time, its connection is checked with a quick “hello” call before it is used again. Defaults to 5,000ms (5 seconds).
+
+MONGOC_URI_DIRECTCONNECTION
+directconnection
+If “true”, the driver connects to a single server directly and will not monitor additional servers. If “false”, the driver connects based on the presence and value of the replicaSet option.
+
+
+
+Setting any of the *TimeoutMS options above to 0 will be interpreted as “use the default value”.
+
+
+Connection Pool Options
+These options govern the behavior of a mongoc_client_pool_t . They are ignored by a non-pooled mongoc_client_t .
+
+
+Constant
+Key
+Description
+
+
+
+MONGOC_URI_MAXPOOLSIZE
+maxpoolsize
+The maximum number of clients created by a mongoc_client_pool_t total (both in the pool and checked out). The default value is 100. Once it is reached, mongoc_client_pool_pop() blocks until another thread pushes a client.
+
+MONGOC_URI_MINPOOLSIZE
+minpoolsize
+Deprecated. This option’s behavior does not match its name, and its actual behavior will likely hurt performance.
+
+MONGOC_URI_MAXIDLETIMEMS
+maxidletimems
+Not implemented.
+
+MONGOC_URI_WAITQUEUEMULTIPLE
+waitqueuemultiple
+Not implemented.
+
+MONGOC_URI_WAITQUEUETIMEOUTMS
+waitqueuetimeoutms
+The maximum time to wait for a client to become available from the pool.
+
+
+
+
+
+Write Concern Options
+
+
+Constant
+Key
+Description
+
+
+
+MONGOC_URI_W
+w
+Determines the write concern (guarantee). Valid values:
+
+0 = The driver will not acknowledge write operations but will pass or handle any network and socket errors that it receives to the client. If you disable write concern but enable the getLastError command’s w option, w overrides the w option.
+1 = Provides basic acknowledgement of write operations. By specifying 1, you require that a standalone mongod instance, or the primary for replica sets, acknowledge all write operations. For drivers released after the default write concern change, this is the default write concern setting.
+majority = For replica sets, if you specify the special majority value to w option, write operations will only return successfully after a majority of the configured replica set members have acknowledged the write operation.
+n = For replica sets, if you specify a number n greater than 1, operations with this write concern return only after n members of the set have acknowledged the write. If you set n to a number that is greater than the number of available set members or members that hold data, MongoDB will wait, potentially indefinitely, for these members to become available.
+tags = For replica sets, you can specify a tag set to require that all members of the set that have these tags configured return confirmation of the write operation.
+
+
+
+MONGOC_URI_WTIMEOUTMS
+wtimeoutms
+The time in milliseconds to wait for replication to succeed, as specified in the w option, before timing out. When wtimeoutMS is 0, write operations will never time out.
+
+MONGOC_URI_JOURNAL
+journal
+Controls whether write operations will wait until the mongod acknowledges the write operations and commits the data to the on disk journal.
+
+true = Enables journal commit acknowledgement write concern. Equivalent to specifying the getLastError command with the j option enabled.
+false = Does not require that mongod commit write operations to the journal before acknowledging the write operation. This is the default option for the journal parameter.
+
+
+
+
+
+
+
+Read Concern Options
+
+
+Constant
+Key
+Description
+
+
+
+MONGOC_URI_READCONCERNLEVEL
+readconcernlevel
+The level of isolation for read operations. If the level is left unspecified, the server default will be used. See readConcern in the MongoDB Manual for details.
+
+
+
+
+
+Read Preference Options
+When connected to a replica set, the driver chooses which member to query using the read preference:
+
+Choose members whose type matches “readPreference”.
+From these, if there are any tags sets configured, choose members matching the first tag set. If there are none, fall back to the next tag set and so on, until some members are chosen or the tag sets are exhausted.
+From the chosen servers, distribute queries randomly among the server with the fastest round-trip times. These include the server with the fastest time and any whose round-trip time is no more than “localThresholdMS” slower.
+
+
+
+Constant
+Key
+Description
+
+
+
+MONGOC_URI_READPREFERENCE
+readpreference
+Specifies the replica set read preference for this connection. This setting overrides any secondaryOk value. The read preference values are the following:
+
+primary (default)
+primaryPreferred
+secondary
+secondaryPreferred
+nearest
+
+
+
+MONGOC_URI_READPREFERENCETAGS
+readpreferencetags
+A representation of a tag set. See also Tag Sets .
+
+MONGOC_URI_LOCALTHRESHOLDMS
+localthresholdms
+How far to distribute queries, beyond the server with the fastest round-trip time. By default, only servers within 15ms of the fastest round-trip time receive queries.
+
+MONGOC_URI_MAXSTALENESSSECONDS
+maxstalenessseconds
+The maximum replication lag, in wall clock time, that a secondary can suffer and still be eligible. The smallest allowed value for maxStalenessSeconds is 90 seconds.
+
+
+
+
+
Note
+
When connecting to more than one mongos, libmongoc’s localThresholdMS applies only to the selection of mongos servers. The threshold for selecting among replica set members in shards is controlled by the mongos’s localThreshold command line option .
+
+
+
+Legacy Options
+For historical reasons, the following options are available. They should however not be used.
+
+
+Constant
+Key
+Description
+
+
+
+MONGOC_URI_SAFE
+safe
+{true|false} Same as w={1|0}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_uri_unescape.html b/libmongoc/1.23.4/mongoc_uri_unescape.html
new file mode 100644
index 0000000000000000000000000000000000000000..0cad06c6911c16860a3154407d2e7b099721b9cf
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_uri_unescape.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_uri_unescape() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_uri_unescape()
+
+Synopsis
+char *
+mongoc_uri_unescape ( const char * escaped_string ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+Unescapes an URI encoded string. For example, “%40” would become “@”.
+
+
+Returns
+Returns a newly allocated string that should be freed with bson_free() . If escaped_string contains an invalid UTF-8 character or an invalid escape sequence, returns NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_version.html b/libmongoc/1.23.4/mongoc_version.html
new file mode 100644
index 0000000000000000000000000000000000000000..2106d1293a5eaee84d3043f54aa42fefdd38d669
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_version.html
@@ -0,0 +1,217 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Version Checks — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Version Checks
+Conditional compilation based on mongoc version
+
+Description
+The following preprocessor macros can be used to perform various checks based on the version of the library you are compiling against.
+This may be useful if you only want to enable a feature on a certain version of the library.
+#include <mongoc/mongoc.h>
+
+#define MONGOC_MAJOR_VERSION (x)
+#define MONGOC_MINOR_VERSION (y)
+#define MONGOC_MICRO_VERSION (z)
+#define MONGOC_VERSION_S "x.y.z"
+#define MONGOC_VERSION_HEX ((1 << 24) | (0 << 16) | (0 << 8) | 0)
+#define MONGOC_CHECK_VERSION(major, minor, micro)
+
+
+Only compile a block on MongoDB C Driver 1.1.0 and newer.
+#if MONGOC_CHECK_VERSION(1, 1, 0)
+static void
+do_something ( void )
+{
+}
+#endif
+
+
+
+
+Run-Time Version Checks
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_append.html b/libmongoc/1.23.4/mongoc_write_concern_append.html
new file mode 100644
index 0000000000000000000000000000000000000000..06d34fc35dc094eb944f45442baceb2cc85b13c1
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_append.html
@@ -0,0 +1,208 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_append() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_append()
+
+Synopsis
+bool
+mongoc_write_concern_append ( mongoc_write_concern_t * write_concern ,
+ bson_t * command );
+
+
+
+
+
+Description
+This function appends a write concern to command options. It is useful for appending a write concern to command options before passing them to mongoc_client_write_command_with_opts() or a related function that takes an options document.
+
+
+Returns
+Returns true on success. If any arguments are invalid, returns false and logs an error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_copy.html b/libmongoc/1.23.4/mongoc_write_concern_copy.html
new file mode 100644
index 0000000000000000000000000000000000000000..8a1ce906b5f0849842f733acb8bbdbc06d35a69a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_copy.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_copy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_copy()
+
+Synopsis
+mongoc_write_concern_t *
+mongoc_write_concern_copy ( const mongoc_write_concern_t * write_concern )
+ BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+
+Description
+Performs a deep copy of write_concern .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_destroy.html b/libmongoc/1.23.4/mongoc_write_concern_destroy.html
new file mode 100644
index 0000000000000000000000000000000000000000..120e36b02735c3e26f1a8229348f47ceaa9c9875
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_destroy.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_destroy() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_destroy()
+
+Synopsis
+void
+mongoc_write_concern_destroy ( mongoc_write_concern_t * write_concern );
+
+
+
+
+
+Description
+Frees all resources associated with the write concern structure. Does nothing if write_concern is NULL.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_get_fsync.html b/libmongoc/1.23.4/mongoc_write_concern_get_fsync.html
new file mode 100644
index 0000000000000000000000000000000000000000..4a1e0e3fac963f5233aa2a107317de076fa13144
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_get_fsync.html
@@ -0,0 +1,209 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_get_fsync() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_get_fsync()
+
+Synopsis
+bool
+mongoc_write_concern_get_fsync ( const mongoc_write_concern_t * write_concern );
+
+
+
+
+
+Description
+Fetches if an fsync should be performed before returning success on a write operation.
+
+
+Returns
+Returns true if fsync is set as part of the write concern.
+
+
+Deprecated
+
+
Warning
+
The fsync write concern is deprecated; use journal instead.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_get_journal.html b/libmongoc/1.23.4/mongoc_write_concern_get_journal.html
new file mode 100644
index 0000000000000000000000000000000000000000..be22319035e1d359f6deeecf34602ec5be19fb7e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_get_journal.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_get_journal() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_get_journal()
+
+Synopsis
+bool
+mongoc_write_concern_get_journal ( const mongoc_write_concern_t * write_concern );
+
+
+
+
+
+Description
+Fetches if the write should be journaled before indicating success.
+
+
+Returns
+Returns true if the write should be journaled.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_get_w.html b/libmongoc/1.23.4/mongoc_write_concern_get_w.html
new file mode 100644
index 0000000000000000000000000000000000000000..1258c2918daa513a69fb260887014f5cce96a496
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_get_w.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_get_w() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_get_w()
+
+Synopsis
+int32_t
+mongoc_write_concern_get_w ( const mongoc_write_concern_t * write_concern );
+
+
+
+
+
+Description
+Fetches the w parameter of the write concern.
+
+
+Returns
+Returns an integer containing the w value. If wmajority is set, this would be MONGOC_WRITE_CONCERN_W_MAJORITY.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_get_wmajority.html b/libmongoc/1.23.4/mongoc_write_concern_get_wmajority.html
new file mode 100644
index 0000000000000000000000000000000000000000..c53927d9f49eca29ba5fe4dd0672455a18a3161f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_get_wmajority.html
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_get_wmajority() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_get_wmajority()
+
+Synopsis
+bool
+mongoc_write_concern_get_wmajority (
+ const mongoc_write_concern_t * write_concern );
+
+
+
+
+
+Description
+Fetches if the write should be written to a majority of nodes before indicating success.
+
+
+Returns
+Returns true if wmajority is set.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_get_wtag.html b/libmongoc/1.23.4/mongoc_write_concern_get_wtag.html
new file mode 100644
index 0000000000000000000000000000000000000000..9208f2132fa739b7810f6f28f54698db230c5a1c
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_get_wtag.html
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_get_wtag() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_get_wtag()
+
+Synopsis
+const char *
+mongoc_write_concern_get_wtag ( const mongoc_write_concern_t * write_concern );
+
+
+
+
+
+Description
+A string containing the wtag setting if it has been set. Otherwise returns NULL .
+
+
+Returns
+Returns a string which should not be modified or freed, or NULL .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_get_wtimeout.html b/libmongoc/1.23.4/mongoc_write_concern_get_wtimeout.html
new file mode 100644
index 0000000000000000000000000000000000000000..8f0241cd0e61ec930266b5a422dcaeded73fbdd8
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_get_wtimeout.html
@@ -0,0 +1,209 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_get_wtimeout() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_get_wtimeout()
+
+Synopsis
+int32_t
+mongoc_write_concern_get_wtimeout ( const mongoc_write_concern_t * write_concern );
+
+
+
+
+
+Description
+Get the timeout in milliseconds that the server should wait before returning with a write concern timeout.
+A value of 0 indicates no write timeout.
+
+
+Returns
+Returns an 32-bit signed integer containing the timeout.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_get_wtimeout_int64.html b/libmongoc/1.23.4/mongoc_write_concern_get_wtimeout_int64.html
new file mode 100644
index 0000000000000000000000000000000000000000..deb56457e97e2fe7149c7bb9a20b4e481e05a461
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_get_wtimeout_int64.html
@@ -0,0 +1,209 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_get_wtimeout_int64() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_get_wtimeout_int64()
+
+Synopsis
+int64_t
+mongoc_write_concern_get_wtimeout_int64 ( const mongoc_write_concern_t * write_concern );
+
+
+
+
+
+Description
+Get the timeout in milliseconds that the server should wait before returning with a write concern timeout.
+A value of 0 indicates no write timeout.
+
+
+Returns
+Returns a 64-bit signed integer containing the timeout.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_is_acknowledged.html b/libmongoc/1.23.4/mongoc_write_concern_is_acknowledged.html
new file mode 100644
index 0000000000000000000000000000000000000000..0e64ef95d8fa9117ed4102132c1ef0c1fb33331e
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_is_acknowledged.html
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_is_acknowledged() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_is_acknowledged()
+
+Synopsis
+bool
+mongoc_write_concern_is_acknowledged (
+ const mongoc_write_concern_t * write_concern );
+
+
+
+
+
+Description
+Test if this is an acknowledged or unacknowledged write concern.
+If write_concern is NULL, returns true. (In other words, writes are acknowledged by default.)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_is_default.html b/libmongoc/1.23.4/mongoc_write_concern_is_default.html
new file mode 100644
index 0000000000000000000000000000000000000000..6da62460ee2053007f98079c357367c79dac8297
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_is_default.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_is_default() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_is_default()
+
+Synopsis
+bool
+mongoc_write_concern_is_default ( mongoc_write_concern_t * write_concern );
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_is_valid.html b/libmongoc/1.23.4/mongoc_write_concern_is_valid.html
new file mode 100644
index 0000000000000000000000000000000000000000..e1ae2c5ae80ca5a1c8f72e4063042e6533e50fce
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_is_valid.html
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_is_valid() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_is_valid()
+
+Synopsis
+bool
+mongoc_write_concern_is_valid ( const mongoc_write_concern_t * write_concern );
+
+
+
+
+
+Description
+Test if this write concern uses an invalid combination of options.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_journal_is_set.html b/libmongoc/1.23.4/mongoc_write_concern_journal_is_set.html
new file mode 100644
index 0000000000000000000000000000000000000000..985415b0f653125c14c80399514d41a65b1464ff
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_journal_is_set.html
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_journal_is_set() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_journal_is_set()
+
+Synopsis
+bool
+mongoc_write_concern_journal_is_set (
+ const mongoc_write_concern_t * write_concern );
+
+
+
+
+
+Description
+Test whether this write concern’s “journal” option was explicitly set or uses the default setting.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_new.html b/libmongoc/1.23.4/mongoc_write_concern_new.html
new file mode 100644
index 0000000000000000000000000000000000000000..a6c398e62ab089866326c32fda10d8cb1d76df7f
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_new.html
@@ -0,0 +1,192 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_new() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_new()
+
+Synopsis
+mongoc_write_concern_t *
+mongoc_write_concern_new ( void ) BSON_GNUC_WARN_UNUSED_RESULT ;
+
+
+
+
+Returns
+Creates a newly allocated write concern that can be configured based on user preference. This should be freed with mongoc_write_concern_destroy() when no longer in use.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_set_fsync.html b/libmongoc/1.23.4/mongoc_write_concern_set_fsync.html
new file mode 100644
index 0000000000000000000000000000000000000000..01f14fb9bb3483d876f9435b1745c20e60f51232
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_set_fsync.html
@@ -0,0 +1,212 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_set_fsync() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_set_fsync()
+
+Synopsis
+void
+mongoc_write_concern_set_fsync ( mongoc_write_concern_t * write_concern ,
+ bool fsync_ );
+
+
+
+
+
+Description
+Sets if a fsync must be performed before indicating write success.
+Beginning in version 1.9.0, this function can now alter the write concern after
+it has been used in an operation. Previously, using the struct with an operation
+would mark it as “frozen” and calling this function would log a warning instead
+instead of altering the write concern.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_set_journal.html b/libmongoc/1.23.4/mongoc_write_concern_set_journal.html
new file mode 100644
index 0000000000000000000000000000000000000000..6c1c997f74c4863935affe9c1167ea2c8fa987ab
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_set_journal.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_set_journal() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_set_journal()
+
+Synopsis
+void
+mongoc_write_concern_set_journal ( mongoc_write_concern_t * write_concern ,
+ bool journal );
+
+
+
+
+
+Description
+Sets if the write must have been journaled before indicating success.
+Beginning in version 1.9.0, this function can now alter the write concern after
+it has been used in an operation. Previously, using the struct with an operation
+would mark it as “frozen” and calling this function would log a warning instead
+instead of altering the write concern.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_set_w.html b/libmongoc/1.23.4/mongoc_write_concern_set_w.html
new file mode 100644
index 0000000000000000000000000000000000000000..8c4842a5c793e1b0a109011a4fbd677905460171
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_set_w.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_set_w() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_set_w()
+
+Synopsis
+void
+mongoc_write_concern_set_w ( mongoc_write_concern_t * write_concern , int32_t w );
+
+
+
+
+
+Description
+Sets the w value for the write concern. See mongoc_write_concern_t for more information on this setting.
+Unacknowledged writes are not causally consistent. If you execute a write operation with a mongoc_write_concern_t on which you have called mongoc_write_concern_set_w() with a value of 0, the write does not participate in causal consistency, even when executed with a mongoc_client_session_t .
+Beginning in version 1.9.0, this function can now alter the write concern after
+it has been used in an operation. Previously, using the struct with an operation
+would mark it as “frozen” and calling this function would log a warning instead
+instead of altering the write concern.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_set_wmajority.html b/libmongoc/1.23.4/mongoc_write_concern_set_wmajority.html
new file mode 100644
index 0000000000000000000000000000000000000000..bc185934fd90ccfda7b9e5e9ef2070c585d44959
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_set_wmajority.html
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_set_wmajority() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_set_wmajority()
+
+Synopsis
+void
+mongoc_write_concern_set_wmajority ( mongoc_write_concern_t * write_concern ,
+ int32_t wtimeout_msec );
+
+
+
+
+
+Description
+Sets if the write must have been propagated to a majority of nodes before indicating write success.
+The timeout specifies how long, in milliseconds, the server should wait before indicating that the write has failed. This is not the same as a socket timeout. A value of zero may be used to indicate no timeout.
+Beginning in version 1.9.0, this function can now alter the write concern after
+it has been used in an operation. Previously, using the struct with an operation
+would mark it as “frozen” and calling this function would log a warning instead
+instead of altering the write concern.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_set_wtag.html b/libmongoc/1.23.4/mongoc_write_concern_set_wtag.html
new file mode 100644
index 0000000000000000000000000000000000000000..330cfd96e0e0d8ef9b4301b02718dc14c14fb53a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_set_wtag.html
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_set_wtag() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_set_wtag()
+
+Synopsis
+void
+mongoc_write_concern_set_wtag ( mongoc_write_concern_t * write_concern ,
+ const char * tag );
+
+
+
+
+
+Description
+Sets the write tag that must be satisfied for the write to indicate success. Write tags are preset write concerns configured on your MongoDB server. See mongoc_write_concern_t for more information on this setting.
+Beginning in version 1.9.0, this function can now alter the write concern after
+it has been used in an operation. Previously, using the struct with an operation
+would mark it as “frozen” and calling this function would log a warning instead
+instead of altering the write concern.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_set_wtimeout.html b/libmongoc/1.23.4/mongoc_write_concern_set_wtimeout.html
new file mode 100644
index 0000000000000000000000000000000000000000..c63a676551ee43d0966bf47731c4fec4f24dde19
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_set_wtimeout.html
@@ -0,0 +1,210 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_set_wtimeout() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_set_wtimeout()
+
+Synopsis
+void
+mongoc_write_concern_set_wtimeout ( mongoc_write_concern_t * write_concern ,
+ int32_t wtimeout_msec );
+
+
+
+
+
+Description
+Set the timeout in milliseconds that the server should wait before returning with a write concern timeout. This is not the same as a socket timeout. A value of zero may be used to indicate no write concern timeout.
+Beginning in version 1.9.0, this function can now alter the write concern after
+it has been used in an operation. Previously, using the struct with an operation
+would mark it as “frozen” and calling this function would log a warning instead
+instead of altering the write concern.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_set_wtimeout_int64.html b/libmongoc/1.23.4/mongoc_write_concern_set_wtimeout_int64.html
new file mode 100644
index 0000000000000000000000000000000000000000..86b0588e21691261b20064601b5bfc9c711bac4d
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_set_wtimeout_int64.html
@@ -0,0 +1,210 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_set_wtimeout_int64() — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_set_wtimeout_int64()
+
+Synopsis
+void
+mongoc_write_concern_set_wtimeout_int64 ( mongoc_write_concern_t * write_concern ,
+ int64_t wtimeout_msec );
+
+
+
+
+
+Description
+Set the timeout in milliseconds that the server should wait before returning with a write concern timeout. This is not the same as a socket timeout. A value of zero may be used to indicate no write concern timeout.
+Beginning in version 1.9.0, this function can now alter the write concern after
+it has been used in an operation. Previously, using the struct with an operation
+would mark it as “frozen” and calling this function would log a warning instead
+instead of altering the write concern.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/mongoc_write_concern_t.html b/libmongoc/1.23.4/mongoc_write_concern_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..f344016654104ba2bf347368bc07740c5d4f7f4a
--- /dev/null
+++ b/libmongoc/1.23.4/mongoc_write_concern_t.html
@@ -0,0 +1,251 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mongoc_write_concern_t — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+mongoc_write_concern_t
+Write Concern abstraction
+
+Synopsis
+mongoc_write_concern_t tells the driver what level of acknowledgement to await from the server. The default, MONGOC_WRITE_CONCERN_W_DEFAULT, is right for the great majority of applications.
+You can specify a write concern on connection objects, database objects, collection objects, or per-operation. Data-modifying operations typically use the write concern of the object they operate on, and check the server response for a write concern error or write concern timeout. For example, mongoc_collection_drop_index() uses the collection’s write concern, and a write concern error or timeout in the response is considered a failure.
+Exceptions to this principle are the generic command functions:
+
+These generic command functions do not automatically apply a write concern, and they do not check the server response for a write concern error or write concern timeout.
+See Write Concern on the MongoDB website for more information.
+
+
+Write Concern Levels
+Set the write concern level with mongoc_write_concern_set_w() .
+
+
+MONGOC_WRITE_CONCERN_W_DEFAULT (1)
+By default, writes block awaiting acknowledgement from MongoDB. Acknowledged write concern allows clients to catch network, duplicate key, and other errors.
+
+MONGOC_WRITE_CONCERN_W_UNACKNOWLEDGED (0)
+With this write concern, MongoDB does not acknowledge the receipt of write operation. Unacknowledged is similar to errors ignored; however, mongoc attempts to receive and handle network errors when possible.
+
+MONGOC_WRITE_CONCERN_W_MAJORITY (majority)
+Block until a write has been propagated to a majority of the nodes in the replica set.
+
+n
+Block until a write has been propagated to at least n nodes in the replica set.
+
+
+
+
+
+Deprecations
+The write concern MONGOC_WRITE_CONCERN_W_ERRORS_IGNORED (value -1) is a deprecated synonym for MONGOC_WRITE_CONCERN_W_UNACKNOWLEDGED (value 0), and will be removed in the next major release.
+mongoc_write_concern_set_fsync() is deprecated.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/objects.inv b/libmongoc/1.23.4/objects.inv
new file mode 100644
index 0000000000000000000000000000000000000000..b1a13ed1982e2192e1b7dd751516944e6049cb92
Binary files /dev/null and b/libmongoc/1.23.4/objects.inv differ
diff --git a/libmongoc/1.23.4/queryable-encryption.html b/libmongoc/1.23.4/queryable-encryption.html
new file mode 100644
index 0000000000000000000000000000000000000000..6d97157f4dffb6278117241995c25887689d6ba7
--- /dev/null
+++ b/libmongoc/1.23.4/queryable-encryption.html
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Experimental: Queryable Encryption — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Experimental: Queryable Encryption
+MongoDB 6.0 introduces Queryable Encryption as a Public Technical Preview.
+This API is still experimental and subject to breaking changes!
+APIs that are part of Queryable Encryption will be marked as experimental, and
+one should not rely on their stability.
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/search.html b/libmongoc/1.23.4/search.html
new file mode 100644
index 0000000000000000000000000000000000000000..c5884e0a4663c76cf0715614464bd099310b0308
--- /dev/null
+++ b/libmongoc/1.23.4/search.html
@@ -0,0 +1,123 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ Search — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Search
+
+
+
+ Please activate JavaScript to enable the search
+ functionality.
+
+
+
+ From here you can search these documents. Enter your search
+ words into the box below and click "search". Note that the search
+ function will automatically search for all of the words. Pages
+ containing fewer words won't appear in the result list.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/searchindex.js b/libmongoc/1.23.4/searchindex.js
new file mode 100644
index 0000000000000000000000000000000000000000..99bb88b554db594b32cf05d4d3caa015c8bd0b3c
--- /dev/null
+++ b/libmongoc/1.23.4/searchindex.js
@@ -0,0 +1 @@
+Search.setIndex({"docnames": ["advanced-connections", "aggregate", "api", "application-performance-monitoring", "authentication", "basic-troubleshooting", "bulk", "configuring_tls", "connection-pooling", "create-indexes", "cursors", "debugging", "distinct-mapreduce", "errors", "full_index", "gridfs", "guides", "index", "init-cleanup", "installing", "lifecycle", "logging", "matcher", "mongoc-common-task-examples", "mongoc_apm_callbacks_destroy", "mongoc_apm_callbacks_new", "mongoc_apm_callbacks_t", "mongoc_apm_command_failed_get_command_name", "mongoc_apm_command_failed_get_context", "mongoc_apm_command_failed_get_duration", "mongoc_apm_command_failed_get_error", "mongoc_apm_command_failed_get_host", "mongoc_apm_command_failed_get_operation_id", "mongoc_apm_command_failed_get_reply", "mongoc_apm_command_failed_get_request_id", "mongoc_apm_command_failed_get_server_connection_id", "mongoc_apm_command_failed_get_server_id", "mongoc_apm_command_failed_get_service_id", "mongoc_apm_command_failed_t", "mongoc_apm_command_started_get_command", "mongoc_apm_command_started_get_command_name", "mongoc_apm_command_started_get_context", "mongoc_apm_command_started_get_database_name", "mongoc_apm_command_started_get_host", "mongoc_apm_command_started_get_operation_id", "mongoc_apm_command_started_get_request_id", "mongoc_apm_command_started_get_server_connection_id", "mongoc_apm_command_started_get_server_id", "mongoc_apm_command_started_get_service_id", "mongoc_apm_command_started_t", "mongoc_apm_command_succeeded_get_command_name", "mongoc_apm_command_succeeded_get_context", "mongoc_apm_command_succeeded_get_duration", "mongoc_apm_command_succeeded_get_host", "mongoc_apm_command_succeeded_get_operation_id", "mongoc_apm_command_succeeded_get_reply", "mongoc_apm_command_succeeded_get_request_id", "mongoc_apm_command_succeeded_get_server_connection_id", "mongoc_apm_command_succeeded_get_server_id", "mongoc_apm_command_succeeded_get_service_id", "mongoc_apm_command_succeeded_t", "mongoc_apm_server_changed_get_context", "mongoc_apm_server_changed_get_host", "mongoc_apm_server_changed_get_new_description", "mongoc_apm_server_changed_get_previous_description", "mongoc_apm_server_changed_get_topology_id", "mongoc_apm_server_changed_t", "mongoc_apm_server_closed_get_context", "mongoc_apm_server_closed_get_host", "mongoc_apm_server_closed_get_topology_id", "mongoc_apm_server_closed_t", "mongoc_apm_server_heartbeat_failed_get_awaited", "mongoc_apm_server_heartbeat_failed_get_context", "mongoc_apm_server_heartbeat_failed_get_duration", "mongoc_apm_server_heartbeat_failed_get_error", "mongoc_apm_server_heartbeat_failed_get_host", "mongoc_apm_server_heartbeat_failed_t", "mongoc_apm_server_heartbeat_started_get_awaited", "mongoc_apm_server_heartbeat_started_get_context", "mongoc_apm_server_heartbeat_started_get_host", "mongoc_apm_server_heartbeat_started_t", "mongoc_apm_server_heartbeat_succeeded_get_awaited", "mongoc_apm_server_heartbeat_succeeded_get_context", "mongoc_apm_server_heartbeat_succeeded_get_duration", "mongoc_apm_server_heartbeat_succeeded_get_host", "mongoc_apm_server_heartbeat_succeeded_get_reply", "mongoc_apm_server_heartbeat_succeeded_t", "mongoc_apm_server_opening_get_context", "mongoc_apm_server_opening_get_host", "mongoc_apm_server_opening_get_topology_id", "mongoc_apm_server_opening_t", "mongoc_apm_set_command_failed_cb", "mongoc_apm_set_command_started_cb", "mongoc_apm_set_command_succeeded_cb", "mongoc_apm_set_server_changed_cb", "mongoc_apm_set_server_closed_cb", "mongoc_apm_set_server_heartbeat_failed_cb", "mongoc_apm_set_server_heartbeat_started_cb", "mongoc_apm_set_server_heartbeat_succeeded_cb", "mongoc_apm_set_server_opening_cb", "mongoc_apm_set_topology_changed_cb", "mongoc_apm_set_topology_closed_cb", "mongoc_apm_set_topology_opening_cb", "mongoc_apm_topology_changed_get_context", "mongoc_apm_topology_changed_get_new_description", "mongoc_apm_topology_changed_get_previous_description", "mongoc_apm_topology_changed_get_topology_id", "mongoc_apm_topology_changed_t", "mongoc_apm_topology_closed_get_context", "mongoc_apm_topology_closed_get_topology_id", "mongoc_apm_topology_closed_t", "mongoc_apm_topology_opening_get_context", "mongoc_apm_topology_opening_get_topology_id", "mongoc_apm_topology_opening_t", "mongoc_auto_encryption_opts_destroy", "mongoc_auto_encryption_opts_new", "mongoc_auto_encryption_opts_set_bypass_auto_encryption", "mongoc_auto_encryption_opts_set_bypass_query_analysis", "mongoc_auto_encryption_opts_set_encrypted_fields_map", "mongoc_auto_encryption_opts_set_extra", "mongoc_auto_encryption_opts_set_keyvault_client", "mongoc_auto_encryption_opts_set_keyvault_client_pool", "mongoc_auto_encryption_opts_set_keyvault_namespace", "mongoc_auto_encryption_opts_set_kms_credential_provider_callback", "mongoc_auto_encryption_opts_set_kms_providers", "mongoc_auto_encryption_opts_set_schema_map", "mongoc_auto_encryption_opts_set_tls_opts", "mongoc_auto_encryption_opts_t", "mongoc_bulk_operation_delete", "mongoc_bulk_operation_delete_one", "mongoc_bulk_operation_destroy", "mongoc_bulk_operation_execute", "mongoc_bulk_operation_get_hint", "mongoc_bulk_operation_get_write_concern", "mongoc_bulk_operation_insert", "mongoc_bulk_operation_insert_with_opts", "mongoc_bulk_operation_remove", "mongoc_bulk_operation_remove_many_with_opts", "mongoc_bulk_operation_remove_one", "mongoc_bulk_operation_remove_one_with_opts", "mongoc_bulk_operation_replace_one", "mongoc_bulk_operation_replace_one_with_opts", "mongoc_bulk_operation_set_bypass_document_validation", "mongoc_bulk_operation_set_client_session", "mongoc_bulk_operation_set_comment", "mongoc_bulk_operation_set_hint", "mongoc_bulk_operation_set_let", "mongoc_bulk_operation_t", "mongoc_bulk_operation_update", "mongoc_bulk_operation_update_many_with_opts", "mongoc_bulk_operation_update_one", "mongoc_bulk_operation_update_one_with_opts", "mongoc_change_stream_destroy", "mongoc_change_stream_error_document", "mongoc_change_stream_get_resume_token", "mongoc_change_stream_next", "mongoc_change_stream_t", "mongoc_check_version", "mongoc_cleanup", "mongoc_client_command", "mongoc_client_command_simple", "mongoc_client_command_simple_with_server_id", "mongoc_client_command_with_opts", "mongoc_client_destroy", "mongoc_client_enable_auto_encryption", "mongoc_client_encryption_add_key_alt_name", "mongoc_client_encryption_create_datakey", "mongoc_client_encryption_datakey_opts_destroy", "mongoc_client_encryption_datakey_opts_new", "mongoc_client_encryption_datakey_opts_set_keyaltnames", "mongoc_client_encryption_datakey_opts_set_keymaterial", "mongoc_client_encryption_datakey_opts_set_masterkey", "mongoc_client_encryption_datakey_opts_t", "mongoc_client_encryption_decrypt", "mongoc_client_encryption_delete_key", "mongoc_client_encryption_destroy", "mongoc_client_encryption_encrypt", "mongoc_client_encryption_encrypt_opts_destroy", "mongoc_client_encryption_encrypt_opts_new", "mongoc_client_encryption_encrypt_opts_set_algorithm", "mongoc_client_encryption_encrypt_opts_set_contention_factor", "mongoc_client_encryption_encrypt_opts_set_keyaltname", "mongoc_client_encryption_encrypt_opts_set_keyid", "mongoc_client_encryption_encrypt_opts_set_query_type", "mongoc_client_encryption_encrypt_opts_t", "mongoc_client_encryption_get_crypt_shared_version", "mongoc_client_encryption_get_key", "mongoc_client_encryption_get_key_by_alt_name", "mongoc_client_encryption_get_keys", "mongoc_client_encryption_new", "mongoc_client_encryption_opts_destroy", "mongoc_client_encryption_opts_new", "mongoc_client_encryption_opts_set_keyvault_client", "mongoc_client_encryption_opts_set_keyvault_namespace", "mongoc_client_encryption_opts_set_kms_credential_provider_callback", "mongoc_client_encryption_opts_set_kms_providers", "mongoc_client_encryption_opts_set_tls_opts", "mongoc_client_encryption_opts_t", "mongoc_client_encryption_remove_key_alt_name", "mongoc_client_encryption_rewrap_many_datakey", "mongoc_client_encryption_rewrap_many_datakey_result_destroy", "mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result", "mongoc_client_encryption_rewrap_many_datakey_result_new", "mongoc_client_encryption_rewrap_many_datakey_result_t", "mongoc_client_encryption_t", "mongoc_client_find_databases_with_opts", "mongoc_client_get_collection", "mongoc_client_get_crypt_shared_version", "mongoc_client_get_database", "mongoc_client_get_database_names", "mongoc_client_get_database_names_with_opts", "mongoc_client_get_default_database", "mongoc_client_get_gridfs", "mongoc_client_get_handshake_description", "mongoc_client_get_max_bson_size", "mongoc_client_get_max_message_size", "mongoc_client_get_read_concern", "mongoc_client_get_read_prefs", "mongoc_client_get_server_description", "mongoc_client_get_server_descriptions", "mongoc_client_get_server_status", "mongoc_client_get_uri", "mongoc_client_get_write_concern", "mongoc_client_new", "mongoc_client_new_from_uri", "mongoc_client_new_from_uri_with_error", "mongoc_client_pool_destroy", "mongoc_client_pool_enable_auto_encryption", "mongoc_client_pool_max_size", "mongoc_client_pool_min_size", "mongoc_client_pool_new", "mongoc_client_pool_new_with_error", "mongoc_client_pool_pop", "mongoc_client_pool_push", "mongoc_client_pool_set_apm_callbacks", "mongoc_client_pool_set_appname", "mongoc_client_pool_set_error_api", "mongoc_client_pool_set_server_api", "mongoc_client_pool_set_ssl_opts", "mongoc_client_pool_t", "mongoc_client_pool_try_pop", "mongoc_client_read_command_with_opts", "mongoc_client_read_write_command_with_opts", "mongoc_client_reset", "mongoc_client_select_server", "mongoc_client_session_abort_transaction", "mongoc_client_session_advance_cluster_time", "mongoc_client_session_advance_operation_time", "mongoc_client_session_append", "mongoc_client_session_commit_transaction", "mongoc_client_session_destroy", "mongoc_client_session_get_client", "mongoc_client_session_get_cluster_time", "mongoc_client_session_get_dirty", "mongoc_client_session_get_lsid", "mongoc_client_session_get_operation_time", "mongoc_client_session_get_opts", "mongoc_client_session_get_server_id", "mongoc_client_session_get_transaction_state", "mongoc_client_session_in_transaction", "mongoc_client_session_start_transaction", "mongoc_client_session_t", "mongoc_client_session_with_transaction", "mongoc_client_session_with_transaction_cb_t", "mongoc_client_set_apm_callbacks", "mongoc_client_set_appname", "mongoc_client_set_error_api", "mongoc_client_set_read_concern", "mongoc_client_set_read_prefs", "mongoc_client_set_server_api", "mongoc_client_set_ssl_opts", "mongoc_client_set_stream_initiator", "mongoc_client_set_write_concern", "mongoc_client_start_session", "mongoc_client_t", "mongoc_client_watch", "mongoc_client_write_command_with_opts", "mongoc_collection_aggregate", "mongoc_collection_command", "mongoc_collection_command_simple", "mongoc_collection_command_with_opts", "mongoc_collection_copy", "mongoc_collection_count", "mongoc_collection_count_documents", "mongoc_collection_count_with_opts", "mongoc_collection_create_bulk_operation", "mongoc_collection_create_bulk_operation_with_opts", "mongoc_collection_create_index", "mongoc_collection_create_index_with_opts", "mongoc_collection_delete", "mongoc_collection_delete_many", "mongoc_collection_delete_one", "mongoc_collection_destroy", "mongoc_collection_drop", "mongoc_collection_drop_index", "mongoc_collection_drop_index_with_opts", "mongoc_collection_drop_with_opts", "mongoc_collection_ensure_index", "mongoc_collection_estimated_document_count", "mongoc_collection_find", "mongoc_collection_find_and_modify", "mongoc_collection_find_and_modify_with_opts", "mongoc_collection_find_indexes", "mongoc_collection_find_indexes_with_opts", "mongoc_collection_find_with_opts", "mongoc_collection_get_last_error", "mongoc_collection_get_name", "mongoc_collection_get_read_concern", "mongoc_collection_get_read_prefs", "mongoc_collection_get_write_concern", "mongoc_collection_insert", "mongoc_collection_insert_bulk", "mongoc_collection_insert_many", "mongoc_collection_insert_one", "mongoc_collection_keys_to_index_string", "mongoc_collection_read_command_with_opts", "mongoc_collection_read_write_command_with_opts", "mongoc_collection_remove", "mongoc_collection_rename", "mongoc_collection_rename_with_opts", "mongoc_collection_replace_one", "mongoc_collection_save", "mongoc_collection_set_read_concern", "mongoc_collection_set_read_prefs", "mongoc_collection_set_write_concern", "mongoc_collection_stats", "mongoc_collection_t", "mongoc_collection_update", "mongoc_collection_update_many", "mongoc_collection_update_one", "mongoc_collection_validate", "mongoc_collection_watch", "mongoc_collection_write_command_with_opts", "mongoc_cursor_clone", "mongoc_cursor_current", "mongoc_cursor_destroy", "mongoc_cursor_error", "mongoc_cursor_error_document", "mongoc_cursor_get_batch_size", "mongoc_cursor_get_hint", "mongoc_cursor_get_host", "mongoc_cursor_get_id", "mongoc_cursor_get_limit", "mongoc_cursor_get_max_await_time_ms", "mongoc_cursor_is_alive", "mongoc_cursor_more", "mongoc_cursor_new_from_command_reply", "mongoc_cursor_new_from_command_reply_with_opts", "mongoc_cursor_next", "mongoc_cursor_set_batch_size", "mongoc_cursor_set_hint", "mongoc_cursor_set_limit", "mongoc_cursor_set_max_await_time_ms", "mongoc_cursor_t", "mongoc_database_add_user", "mongoc_database_aggregate", "mongoc_database_command", "mongoc_database_command_simple", "mongoc_database_command_with_opts", "mongoc_database_copy", "mongoc_database_create_collection", "mongoc_database_destroy", "mongoc_database_drop", "mongoc_database_drop_with_opts", "mongoc_database_find_collections", "mongoc_database_find_collections_with_opts", "mongoc_database_get_collection", "mongoc_database_get_collection_names", "mongoc_database_get_collection_names_with_opts", "mongoc_database_get_name", "mongoc_database_get_read_concern", "mongoc_database_get_read_prefs", "mongoc_database_get_write_concern", "mongoc_database_has_collection", "mongoc_database_read_command_with_opts", "mongoc_database_read_write_command_with_opts", "mongoc_database_remove_all_users", "mongoc_database_remove_user", "mongoc_database_set_read_concern", "mongoc_database_set_read_prefs", "mongoc_database_set_write_concern", "mongoc_database_t", "mongoc_database_watch", "mongoc_database_write_command_with_opts", "mongoc_delete_flags_t", "mongoc_error_has_label", "mongoc_find_and_modify_opts_append", "mongoc_find_and_modify_opts_destroy", "mongoc_find_and_modify_opts_get_bypass_document_validation", "mongoc_find_and_modify_opts_get_fields", "mongoc_find_and_modify_opts_get_flags", "mongoc_find_and_modify_opts_get_max_time_ms", "mongoc_find_and_modify_opts_get_sort", "mongoc_find_and_modify_opts_get_update", "mongoc_find_and_modify_opts_new", "mongoc_find_and_modify_opts_set_bypass_document_validation", "mongoc_find_and_modify_opts_set_fields", "mongoc_find_and_modify_opts_set_flags", "mongoc_find_and_modify_opts_set_max_time_ms", "mongoc_find_and_modify_opts_set_sort", "mongoc_find_and_modify_opts_set_update", "mongoc_find_and_modify_opts_t", "mongoc_get_major_version", "mongoc_get_micro_version", "mongoc_get_minor_version", "mongoc_get_version", "mongoc_gridfs_bucket_abort_upload", "mongoc_gridfs_bucket_delete_by_id", "mongoc_gridfs_bucket_destroy", "mongoc_gridfs_bucket_download_to_stream", "mongoc_gridfs_bucket_find", "mongoc_gridfs_bucket_new", "mongoc_gridfs_bucket_open_download_stream", "mongoc_gridfs_bucket_open_upload_stream", "mongoc_gridfs_bucket_open_upload_stream_with_id", "mongoc_gridfs_bucket_stream_error", "mongoc_gridfs_bucket_t", "mongoc_gridfs_bucket_upload_from_stream", "mongoc_gridfs_bucket_upload_from_stream_with_id", "mongoc_gridfs_create_file", "mongoc_gridfs_create_file_from_stream", "mongoc_gridfs_destroy", "mongoc_gridfs_drop", "mongoc_gridfs_file_destroy", "mongoc_gridfs_file_error", "mongoc_gridfs_file_get_aliases", "mongoc_gridfs_file_get_chunk_size", "mongoc_gridfs_file_get_content_type", "mongoc_gridfs_file_get_filename", "mongoc_gridfs_file_get_id", "mongoc_gridfs_file_get_length", "mongoc_gridfs_file_get_md5", "mongoc_gridfs_file_get_metadata", "mongoc_gridfs_file_get_upload_date", "mongoc_gridfs_file_list_destroy", "mongoc_gridfs_file_list_error", "mongoc_gridfs_file_list_next", "mongoc_gridfs_file_list_t", "mongoc_gridfs_file_opt_t", "mongoc_gridfs_file_readv", "mongoc_gridfs_file_remove", "mongoc_gridfs_file_save", "mongoc_gridfs_file_seek", "mongoc_gridfs_file_set_aliases", "mongoc_gridfs_file_set_content_type", "mongoc_gridfs_file_set_filename", "mongoc_gridfs_file_set_id", "mongoc_gridfs_file_set_md5", "mongoc_gridfs_file_set_metadata", "mongoc_gridfs_file_t", "mongoc_gridfs_file_tell", "mongoc_gridfs_file_writev", "mongoc_gridfs_find", "mongoc_gridfs_find_one", "mongoc_gridfs_find_one_by_filename", "mongoc_gridfs_find_one_with_opts", "mongoc_gridfs_find_with_opts", "mongoc_gridfs_get_chunks", "mongoc_gridfs_get_files", "mongoc_gridfs_remove_by_filename", "mongoc_gridfs_t", "mongoc_handshake_data_append", "mongoc_host_list_t", "mongoc_index_opt_geo_get_default", "mongoc_index_opt_geo_init", "mongoc_index_opt_geo_t", "mongoc_index_opt_get_default", "mongoc_index_opt_init", "mongoc_index_opt_t", "mongoc_index_opt_wt_get_default", "mongoc_index_opt_wt_init", "mongoc_index_opt_wt_t", "mongoc_init", "mongoc_insert_flags_t", "mongoc_iovec_t", "mongoc_matcher_destroy", "mongoc_matcher_match", "mongoc_matcher_new", "mongoc_matcher_t", "mongoc_optional_copy", "mongoc_optional_init", "mongoc_optional_is_set", "mongoc_optional_set_value", "mongoc_optional_t", "mongoc_optional_value", "mongoc_query_flags_t", "mongoc_rand", "mongoc_rand_add", "mongoc_rand_seed", "mongoc_rand_status", "mongoc_read_concern_append", "mongoc_read_concern_copy", "mongoc_read_concern_destroy", "mongoc_read_concern_get_level", "mongoc_read_concern_is_default", "mongoc_read_concern_new", "mongoc_read_concern_set_level", "mongoc_read_concern_t", "mongoc_read_mode_t", "mongoc_read_prefs_add_tag", "mongoc_read_prefs_copy", "mongoc_read_prefs_destroy", "mongoc_read_prefs_get_hedge", "mongoc_read_prefs_get_max_staleness_seconds", "mongoc_read_prefs_get_mode", "mongoc_read_prefs_get_tags", "mongoc_read_prefs_is_valid", "mongoc_read_prefs_new", "mongoc_read_prefs_set_hedge", "mongoc_read_prefs_set_max_staleness_seconds", "mongoc_read_prefs_set_mode", "mongoc_read_prefs_set_tags", "mongoc_read_prefs_t", "mongoc_remove_flags_t", "mongoc_reply_flags_t", "mongoc_server_api_copy", "mongoc_server_api_deprecation_errors", "mongoc_server_api_destroy", "mongoc_server_api_get_deprecation_errors", "mongoc_server_api_get_strict", "mongoc_server_api_get_version", "mongoc_server_api_new", "mongoc_server_api_strict", "mongoc_server_api_t", "mongoc_server_api_version_from_string", "mongoc_server_api_version_t", "mongoc_server_api_version_to_string", "mongoc_server_description_destroy", "mongoc_server_description_hello_response", "mongoc_server_description_host", "mongoc_server_description_id", "mongoc_server_description_ismaster", "mongoc_server_description_last_update_time", "mongoc_server_description_new_copy", "mongoc_server_description_round_trip_time", "mongoc_server_description_t", "mongoc_server_description_type", "mongoc_server_descriptions_destroy_all", "mongoc_session_opt_t", "mongoc_session_opts_clone", "mongoc_session_opts_destroy", "mongoc_session_opts_get_causal_consistency", "mongoc_session_opts_get_default_transaction_opts", "mongoc_session_opts_get_snapshot", "mongoc_session_opts_get_transaction_opts", "mongoc_session_opts_new", "mongoc_session_opts_set_causal_consistency", "mongoc_session_opts_set_default_transaction_opts", "mongoc_session_opts_set_snapshot", "mongoc_socket_accept", "mongoc_socket_bind", "mongoc_socket_close", "mongoc_socket_connect", "mongoc_socket_destroy", "mongoc_socket_errno", "mongoc_socket_getnameinfo", "mongoc_socket_getsockname", "mongoc_socket_listen", "mongoc_socket_new", "mongoc_socket_recv", "mongoc_socket_send", "mongoc_socket_sendv", "mongoc_socket_setsockopt", "mongoc_socket_t", "mongoc_ssl_opt_get_default", "mongoc_ssl_opt_t", "mongoc_stream_buffered_new", "mongoc_stream_buffered_t", "mongoc_stream_close", "mongoc_stream_cork", "mongoc_stream_destroy", "mongoc_stream_file_get_fd", "mongoc_stream_file_new", "mongoc_stream_file_new_for_path", "mongoc_stream_file_t", "mongoc_stream_flush", "mongoc_stream_get_base_stream", "mongoc_stream_gridfs_new", "mongoc_stream_read", "mongoc_stream_readv", "mongoc_stream_setsockopt", "mongoc_stream_should_retry", "mongoc_stream_socket_get_socket", "mongoc_stream_socket_new", "mongoc_stream_socket_t", "mongoc_stream_t", "mongoc_stream_timed_out", "mongoc_stream_tls_t", "mongoc_stream_uncork", "mongoc_stream_write", "mongoc_stream_writev", "mongoc_topology_description_destroy", "mongoc_topology_description_get_servers", "mongoc_topology_description_has_readable_server", "mongoc_topology_description_has_writable_server", "mongoc_topology_description_new_copy", "mongoc_topology_description_t", "mongoc_topology_description_type", "mongoc_transaction_opt_t", "mongoc_transaction_opts_clone", "mongoc_transaction_opts_destroy", "mongoc_transaction_opts_get_max_commit_time_ms", "mongoc_transaction_opts_get_read_concern", "mongoc_transaction_opts_get_read_prefs", "mongoc_transaction_opts_get_write_concern", "mongoc_transaction_opts_new", "mongoc_transaction_opts_set_max_commit_time_ms", "mongoc_transaction_opts_set_read_concern", "mongoc_transaction_opts_set_read_prefs", "mongoc_transaction_opts_set_write_concern", "mongoc_transaction_state_t", "mongoc_update_flags_t", "mongoc_uri_copy", "mongoc_uri_destroy", "mongoc_uri_get_auth_mechanism", "mongoc_uri_get_auth_source", "mongoc_uri_get_compressors", "mongoc_uri_get_database", "mongoc_uri_get_hosts", "mongoc_uri_get_mechanism_properties", "mongoc_uri_get_option_as_bool", "mongoc_uri_get_option_as_int32", "mongoc_uri_get_option_as_int64", "mongoc_uri_get_option_as_utf8", "mongoc_uri_get_options", "mongoc_uri_get_password", "mongoc_uri_get_read_concern", "mongoc_uri_get_read_prefs", "mongoc_uri_get_read_prefs_t", "mongoc_uri_get_replica_set", "mongoc_uri_get_service", "mongoc_uri_get_srv_hostname", "mongoc_uri_get_srv_service_name", "mongoc_uri_get_ssl", "mongoc_uri_get_string", "mongoc_uri_get_tls", "mongoc_uri_get_username", "mongoc_uri_get_write_concern", "mongoc_uri_has_option", "mongoc_uri_new", "mongoc_uri_new_for_host_port", "mongoc_uri_new_with_error", "mongoc_uri_option_is_bool", "mongoc_uri_option_is_int32", "mongoc_uri_option_is_int64", "mongoc_uri_option_is_utf8", "mongoc_uri_set_auth_mechanism", "mongoc_uri_set_auth_source", "mongoc_uri_set_compressors", "mongoc_uri_set_database", "mongoc_uri_set_mechanism_properties", "mongoc_uri_set_option_as_bool", "mongoc_uri_set_option_as_int32", "mongoc_uri_set_option_as_int64", "mongoc_uri_set_option_as_utf8", "mongoc_uri_set_password", "mongoc_uri_set_read_concern", "mongoc_uri_set_read_prefs_t", "mongoc_uri_set_username", "mongoc_uri_set_write_concern", "mongoc_uri_t", "mongoc_uri_unescape", "mongoc_version", "mongoc_write_concern_append", "mongoc_write_concern_copy", "mongoc_write_concern_destroy", "mongoc_write_concern_get_fsync", "mongoc_write_concern_get_journal", "mongoc_write_concern_get_w", "mongoc_write_concern_get_wmajority", "mongoc_write_concern_get_wtag", "mongoc_write_concern_get_wtimeout", "mongoc_write_concern_get_wtimeout_int64", "mongoc_write_concern_is_acknowledged", "mongoc_write_concern_is_default", "mongoc_write_concern_is_valid", "mongoc_write_concern_journal_is_set", "mongoc_write_concern_new", "mongoc_write_concern_set_fsync", "mongoc_write_concern_set_journal", "mongoc_write_concern_set_w", "mongoc_write_concern_set_wmajority", "mongoc_write_concern_set_wtag", "mongoc_write_concern_set_wtimeout", "mongoc_write_concern_set_wtimeout_int64", "mongoc_write_concern_t", "queryable-encryption", "tutorial", "using_client_side_encryption", "visual-studio-guide"], "filenames": ["advanced-connections.rst", "aggregate.rst", "api.rst", "application-performance-monitoring.rst", "authentication.rst", "basic-troubleshooting.rst", "bulk.rst", "configuring_tls.rst", "connection-pooling.rst", "create-indexes.rst", "cursors.rst", "debugging.rst", "distinct-mapreduce.rst", "errors.rst", "full_index.rst", "gridfs.rst", "guides.rst", "index.rst", "init-cleanup.rst", "installing.rst", "lifecycle.rst", "logging.rst", "matcher.rst", "mongoc-common-task-examples.rst", "mongoc_apm_callbacks_destroy.rst", "mongoc_apm_callbacks_new.rst", "mongoc_apm_callbacks_t.rst", "mongoc_apm_command_failed_get_command_name.rst", "mongoc_apm_command_failed_get_context.rst", "mongoc_apm_command_failed_get_duration.rst", "mongoc_apm_command_failed_get_error.rst", "mongoc_apm_command_failed_get_host.rst", "mongoc_apm_command_failed_get_operation_id.rst", "mongoc_apm_command_failed_get_reply.rst", "mongoc_apm_command_failed_get_request_id.rst", "mongoc_apm_command_failed_get_server_connection_id.rst", "mongoc_apm_command_failed_get_server_id.rst", "mongoc_apm_command_failed_get_service_id.rst", "mongoc_apm_command_failed_t.rst", "mongoc_apm_command_started_get_command.rst", "mongoc_apm_command_started_get_command_name.rst", "mongoc_apm_command_started_get_context.rst", "mongoc_apm_command_started_get_database_name.rst", "mongoc_apm_command_started_get_host.rst", "mongoc_apm_command_started_get_operation_id.rst", "mongoc_apm_command_started_get_request_id.rst", "mongoc_apm_command_started_get_server_connection_id.rst", "mongoc_apm_command_started_get_server_id.rst", "mongoc_apm_command_started_get_service_id.rst", "mongoc_apm_command_started_t.rst", "mongoc_apm_command_succeeded_get_command_name.rst", "mongoc_apm_command_succeeded_get_context.rst", "mongoc_apm_command_succeeded_get_duration.rst", "mongoc_apm_command_succeeded_get_host.rst", "mongoc_apm_command_succeeded_get_operation_id.rst", "mongoc_apm_command_succeeded_get_reply.rst", "mongoc_apm_command_succeeded_get_request_id.rst", "mongoc_apm_command_succeeded_get_server_connection_id.rst", "mongoc_apm_command_succeeded_get_server_id.rst", "mongoc_apm_command_succeeded_get_service_id.rst", "mongoc_apm_command_succeeded_t.rst", "mongoc_apm_server_changed_get_context.rst", "mongoc_apm_server_changed_get_host.rst", "mongoc_apm_server_changed_get_new_description.rst", "mongoc_apm_server_changed_get_previous_description.rst", "mongoc_apm_server_changed_get_topology_id.rst", "mongoc_apm_server_changed_t.rst", "mongoc_apm_server_closed_get_context.rst", "mongoc_apm_server_closed_get_host.rst", "mongoc_apm_server_closed_get_topology_id.rst", "mongoc_apm_server_closed_t.rst", "mongoc_apm_server_heartbeat_failed_get_awaited.rst", "mongoc_apm_server_heartbeat_failed_get_context.rst", "mongoc_apm_server_heartbeat_failed_get_duration.rst", "mongoc_apm_server_heartbeat_failed_get_error.rst", "mongoc_apm_server_heartbeat_failed_get_host.rst", "mongoc_apm_server_heartbeat_failed_t.rst", "mongoc_apm_server_heartbeat_started_get_awaited.rst", "mongoc_apm_server_heartbeat_started_get_context.rst", "mongoc_apm_server_heartbeat_started_get_host.rst", "mongoc_apm_server_heartbeat_started_t.rst", "mongoc_apm_server_heartbeat_succeeded_get_awaited.rst", "mongoc_apm_server_heartbeat_succeeded_get_context.rst", "mongoc_apm_server_heartbeat_succeeded_get_duration.rst", "mongoc_apm_server_heartbeat_succeeded_get_host.rst", "mongoc_apm_server_heartbeat_succeeded_get_reply.rst", "mongoc_apm_server_heartbeat_succeeded_t.rst", "mongoc_apm_server_opening_get_context.rst", "mongoc_apm_server_opening_get_host.rst", "mongoc_apm_server_opening_get_topology_id.rst", "mongoc_apm_server_opening_t.rst", "mongoc_apm_set_command_failed_cb.rst", "mongoc_apm_set_command_started_cb.rst", "mongoc_apm_set_command_succeeded_cb.rst", "mongoc_apm_set_server_changed_cb.rst", "mongoc_apm_set_server_closed_cb.rst", "mongoc_apm_set_server_heartbeat_failed_cb.rst", "mongoc_apm_set_server_heartbeat_started_cb.rst", "mongoc_apm_set_server_heartbeat_succeeded_cb.rst", "mongoc_apm_set_server_opening_cb.rst", "mongoc_apm_set_topology_changed_cb.rst", "mongoc_apm_set_topology_closed_cb.rst", "mongoc_apm_set_topology_opening_cb.rst", "mongoc_apm_topology_changed_get_context.rst", "mongoc_apm_topology_changed_get_new_description.rst", "mongoc_apm_topology_changed_get_previous_description.rst", "mongoc_apm_topology_changed_get_topology_id.rst", "mongoc_apm_topology_changed_t.rst", "mongoc_apm_topology_closed_get_context.rst", "mongoc_apm_topology_closed_get_topology_id.rst", "mongoc_apm_topology_closed_t.rst", "mongoc_apm_topology_opening_get_context.rst", "mongoc_apm_topology_opening_get_topology_id.rst", "mongoc_apm_topology_opening_t.rst", "mongoc_auto_encryption_opts_destroy.rst", "mongoc_auto_encryption_opts_new.rst", "mongoc_auto_encryption_opts_set_bypass_auto_encryption.rst", "mongoc_auto_encryption_opts_set_bypass_query_analysis.rst", "mongoc_auto_encryption_opts_set_encrypted_fields_map.rst", "mongoc_auto_encryption_opts_set_extra.rst", "mongoc_auto_encryption_opts_set_keyvault_client.rst", "mongoc_auto_encryption_opts_set_keyvault_client_pool.rst", "mongoc_auto_encryption_opts_set_keyvault_namespace.rst", "mongoc_auto_encryption_opts_set_kms_credential_provider_callback.rst", "mongoc_auto_encryption_opts_set_kms_providers.rst", "mongoc_auto_encryption_opts_set_schema_map.rst", "mongoc_auto_encryption_opts_set_tls_opts.rst", "mongoc_auto_encryption_opts_t.rst", "mongoc_bulk_operation_delete.rst", "mongoc_bulk_operation_delete_one.rst", "mongoc_bulk_operation_destroy.rst", "mongoc_bulk_operation_execute.rst", "mongoc_bulk_operation_get_hint.rst", "mongoc_bulk_operation_get_write_concern.rst", "mongoc_bulk_operation_insert.rst", "mongoc_bulk_operation_insert_with_opts.rst", "mongoc_bulk_operation_remove.rst", "mongoc_bulk_operation_remove_many_with_opts.rst", "mongoc_bulk_operation_remove_one.rst", "mongoc_bulk_operation_remove_one_with_opts.rst", "mongoc_bulk_operation_replace_one.rst", "mongoc_bulk_operation_replace_one_with_opts.rst", "mongoc_bulk_operation_set_bypass_document_validation.rst", "mongoc_bulk_operation_set_client_session.rst", "mongoc_bulk_operation_set_comment.rst", "mongoc_bulk_operation_set_hint.rst", "mongoc_bulk_operation_set_let.rst", "mongoc_bulk_operation_t.rst", "mongoc_bulk_operation_update.rst", "mongoc_bulk_operation_update_many_with_opts.rst", "mongoc_bulk_operation_update_one.rst", "mongoc_bulk_operation_update_one_with_opts.rst", "mongoc_change_stream_destroy.rst", "mongoc_change_stream_error_document.rst", "mongoc_change_stream_get_resume_token.rst", "mongoc_change_stream_next.rst", "mongoc_change_stream_t.rst", "mongoc_check_version.rst", "mongoc_cleanup.rst", "mongoc_client_command.rst", "mongoc_client_command_simple.rst", "mongoc_client_command_simple_with_server_id.rst", "mongoc_client_command_with_opts.rst", "mongoc_client_destroy.rst", "mongoc_client_enable_auto_encryption.rst", "mongoc_client_encryption_add_key_alt_name.rst", "mongoc_client_encryption_create_datakey.rst", "mongoc_client_encryption_datakey_opts_destroy.rst", "mongoc_client_encryption_datakey_opts_new.rst", "mongoc_client_encryption_datakey_opts_set_keyaltnames.rst", "mongoc_client_encryption_datakey_opts_set_keymaterial.rst", "mongoc_client_encryption_datakey_opts_set_masterkey.rst", "mongoc_client_encryption_datakey_opts_t.rst", "mongoc_client_encryption_decrypt.rst", "mongoc_client_encryption_delete_key.rst", "mongoc_client_encryption_destroy.rst", "mongoc_client_encryption_encrypt.rst", "mongoc_client_encryption_encrypt_opts_destroy.rst", "mongoc_client_encryption_encrypt_opts_new.rst", "mongoc_client_encryption_encrypt_opts_set_algorithm.rst", "mongoc_client_encryption_encrypt_opts_set_contention_factor.rst", "mongoc_client_encryption_encrypt_opts_set_keyaltname.rst", "mongoc_client_encryption_encrypt_opts_set_keyid.rst", "mongoc_client_encryption_encrypt_opts_set_query_type.rst", "mongoc_client_encryption_encrypt_opts_t.rst", "mongoc_client_encryption_get_crypt_shared_version.rst", "mongoc_client_encryption_get_key.rst", "mongoc_client_encryption_get_key_by_alt_name.rst", "mongoc_client_encryption_get_keys.rst", "mongoc_client_encryption_new.rst", "mongoc_client_encryption_opts_destroy.rst", "mongoc_client_encryption_opts_new.rst", "mongoc_client_encryption_opts_set_keyvault_client.rst", "mongoc_client_encryption_opts_set_keyvault_namespace.rst", "mongoc_client_encryption_opts_set_kms_credential_provider_callback.rst", "mongoc_client_encryption_opts_set_kms_providers.rst", "mongoc_client_encryption_opts_set_tls_opts.rst", "mongoc_client_encryption_opts_t.rst", "mongoc_client_encryption_remove_key_alt_name.rst", "mongoc_client_encryption_rewrap_many_datakey.rst", "mongoc_client_encryption_rewrap_many_datakey_result_destroy.rst", "mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result.rst", "mongoc_client_encryption_rewrap_many_datakey_result_new.rst", "mongoc_client_encryption_rewrap_many_datakey_result_t.rst", "mongoc_client_encryption_t.rst", "mongoc_client_find_databases_with_opts.rst", "mongoc_client_get_collection.rst", "mongoc_client_get_crypt_shared_version.rst", "mongoc_client_get_database.rst", "mongoc_client_get_database_names.rst", "mongoc_client_get_database_names_with_opts.rst", "mongoc_client_get_default_database.rst", "mongoc_client_get_gridfs.rst", "mongoc_client_get_handshake_description.rst", "mongoc_client_get_max_bson_size.rst", "mongoc_client_get_max_message_size.rst", "mongoc_client_get_read_concern.rst", "mongoc_client_get_read_prefs.rst", "mongoc_client_get_server_description.rst", "mongoc_client_get_server_descriptions.rst", "mongoc_client_get_server_status.rst", "mongoc_client_get_uri.rst", "mongoc_client_get_write_concern.rst", "mongoc_client_new.rst", "mongoc_client_new_from_uri.rst", "mongoc_client_new_from_uri_with_error.rst", "mongoc_client_pool_destroy.rst", "mongoc_client_pool_enable_auto_encryption.rst", "mongoc_client_pool_max_size.rst", "mongoc_client_pool_min_size.rst", "mongoc_client_pool_new.rst", "mongoc_client_pool_new_with_error.rst", "mongoc_client_pool_pop.rst", "mongoc_client_pool_push.rst", "mongoc_client_pool_set_apm_callbacks.rst", "mongoc_client_pool_set_appname.rst", "mongoc_client_pool_set_error_api.rst", "mongoc_client_pool_set_server_api.rst", "mongoc_client_pool_set_ssl_opts.rst", "mongoc_client_pool_t.rst", "mongoc_client_pool_try_pop.rst", "mongoc_client_read_command_with_opts.rst", "mongoc_client_read_write_command_with_opts.rst", "mongoc_client_reset.rst", "mongoc_client_select_server.rst", "mongoc_client_session_abort_transaction.rst", "mongoc_client_session_advance_cluster_time.rst", "mongoc_client_session_advance_operation_time.rst", "mongoc_client_session_append.rst", "mongoc_client_session_commit_transaction.rst", "mongoc_client_session_destroy.rst", "mongoc_client_session_get_client.rst", "mongoc_client_session_get_cluster_time.rst", "mongoc_client_session_get_dirty.rst", "mongoc_client_session_get_lsid.rst", "mongoc_client_session_get_operation_time.rst", "mongoc_client_session_get_opts.rst", "mongoc_client_session_get_server_id.rst", "mongoc_client_session_get_transaction_state.rst", "mongoc_client_session_in_transaction.rst", "mongoc_client_session_start_transaction.rst", "mongoc_client_session_t.rst", "mongoc_client_session_with_transaction.rst", "mongoc_client_session_with_transaction_cb_t.rst", "mongoc_client_set_apm_callbacks.rst", "mongoc_client_set_appname.rst", "mongoc_client_set_error_api.rst", "mongoc_client_set_read_concern.rst", "mongoc_client_set_read_prefs.rst", "mongoc_client_set_server_api.rst", "mongoc_client_set_ssl_opts.rst", "mongoc_client_set_stream_initiator.rst", "mongoc_client_set_write_concern.rst", "mongoc_client_start_session.rst", "mongoc_client_t.rst", "mongoc_client_watch.rst", "mongoc_client_write_command_with_opts.rst", "mongoc_collection_aggregate.rst", "mongoc_collection_command.rst", "mongoc_collection_command_simple.rst", "mongoc_collection_command_with_opts.rst", "mongoc_collection_copy.rst", "mongoc_collection_count.rst", "mongoc_collection_count_documents.rst", "mongoc_collection_count_with_opts.rst", "mongoc_collection_create_bulk_operation.rst", "mongoc_collection_create_bulk_operation_with_opts.rst", "mongoc_collection_create_index.rst", "mongoc_collection_create_index_with_opts.rst", "mongoc_collection_delete.rst", "mongoc_collection_delete_many.rst", "mongoc_collection_delete_one.rst", "mongoc_collection_destroy.rst", "mongoc_collection_drop.rst", "mongoc_collection_drop_index.rst", "mongoc_collection_drop_index_with_opts.rst", "mongoc_collection_drop_with_opts.rst", "mongoc_collection_ensure_index.rst", "mongoc_collection_estimated_document_count.rst", "mongoc_collection_find.rst", "mongoc_collection_find_and_modify.rst", "mongoc_collection_find_and_modify_with_opts.rst", "mongoc_collection_find_indexes.rst", "mongoc_collection_find_indexes_with_opts.rst", "mongoc_collection_find_with_opts.rst", "mongoc_collection_get_last_error.rst", "mongoc_collection_get_name.rst", "mongoc_collection_get_read_concern.rst", "mongoc_collection_get_read_prefs.rst", "mongoc_collection_get_write_concern.rst", "mongoc_collection_insert.rst", "mongoc_collection_insert_bulk.rst", "mongoc_collection_insert_many.rst", "mongoc_collection_insert_one.rst", "mongoc_collection_keys_to_index_string.rst", "mongoc_collection_read_command_with_opts.rst", "mongoc_collection_read_write_command_with_opts.rst", "mongoc_collection_remove.rst", "mongoc_collection_rename.rst", "mongoc_collection_rename_with_opts.rst", "mongoc_collection_replace_one.rst", "mongoc_collection_save.rst", "mongoc_collection_set_read_concern.rst", "mongoc_collection_set_read_prefs.rst", "mongoc_collection_set_write_concern.rst", "mongoc_collection_stats.rst", "mongoc_collection_t.rst", "mongoc_collection_update.rst", "mongoc_collection_update_many.rst", "mongoc_collection_update_one.rst", "mongoc_collection_validate.rst", "mongoc_collection_watch.rst", "mongoc_collection_write_command_with_opts.rst", "mongoc_cursor_clone.rst", "mongoc_cursor_current.rst", "mongoc_cursor_destroy.rst", "mongoc_cursor_error.rst", "mongoc_cursor_error_document.rst", "mongoc_cursor_get_batch_size.rst", "mongoc_cursor_get_hint.rst", "mongoc_cursor_get_host.rst", "mongoc_cursor_get_id.rst", "mongoc_cursor_get_limit.rst", "mongoc_cursor_get_max_await_time_ms.rst", "mongoc_cursor_is_alive.rst", "mongoc_cursor_more.rst", "mongoc_cursor_new_from_command_reply.rst", "mongoc_cursor_new_from_command_reply_with_opts.rst", "mongoc_cursor_next.rst", "mongoc_cursor_set_batch_size.rst", "mongoc_cursor_set_hint.rst", "mongoc_cursor_set_limit.rst", "mongoc_cursor_set_max_await_time_ms.rst", "mongoc_cursor_t.rst", "mongoc_database_add_user.rst", "mongoc_database_aggregate.rst", "mongoc_database_command.rst", "mongoc_database_command_simple.rst", "mongoc_database_command_with_opts.rst", "mongoc_database_copy.rst", "mongoc_database_create_collection.rst", "mongoc_database_destroy.rst", "mongoc_database_drop.rst", "mongoc_database_drop_with_opts.rst", "mongoc_database_find_collections.rst", "mongoc_database_find_collections_with_opts.rst", "mongoc_database_get_collection.rst", "mongoc_database_get_collection_names.rst", "mongoc_database_get_collection_names_with_opts.rst", "mongoc_database_get_name.rst", "mongoc_database_get_read_concern.rst", "mongoc_database_get_read_prefs.rst", "mongoc_database_get_write_concern.rst", "mongoc_database_has_collection.rst", "mongoc_database_read_command_with_opts.rst", "mongoc_database_read_write_command_with_opts.rst", "mongoc_database_remove_all_users.rst", "mongoc_database_remove_user.rst", "mongoc_database_set_read_concern.rst", "mongoc_database_set_read_prefs.rst", "mongoc_database_set_write_concern.rst", "mongoc_database_t.rst", "mongoc_database_watch.rst", "mongoc_database_write_command_with_opts.rst", "mongoc_delete_flags_t.rst", "mongoc_error_has_label.rst", "mongoc_find_and_modify_opts_append.rst", "mongoc_find_and_modify_opts_destroy.rst", "mongoc_find_and_modify_opts_get_bypass_document_validation.rst", "mongoc_find_and_modify_opts_get_fields.rst", "mongoc_find_and_modify_opts_get_flags.rst", "mongoc_find_and_modify_opts_get_max_time_ms.rst", "mongoc_find_and_modify_opts_get_sort.rst", "mongoc_find_and_modify_opts_get_update.rst", "mongoc_find_and_modify_opts_new.rst", "mongoc_find_and_modify_opts_set_bypass_document_validation.rst", "mongoc_find_and_modify_opts_set_fields.rst", "mongoc_find_and_modify_opts_set_flags.rst", "mongoc_find_and_modify_opts_set_max_time_ms.rst", "mongoc_find_and_modify_opts_set_sort.rst", "mongoc_find_and_modify_opts_set_update.rst", "mongoc_find_and_modify_opts_t.rst", "mongoc_get_major_version.rst", "mongoc_get_micro_version.rst", "mongoc_get_minor_version.rst", "mongoc_get_version.rst", "mongoc_gridfs_bucket_abort_upload.rst", "mongoc_gridfs_bucket_delete_by_id.rst", "mongoc_gridfs_bucket_destroy.rst", "mongoc_gridfs_bucket_download_to_stream.rst", "mongoc_gridfs_bucket_find.rst", "mongoc_gridfs_bucket_new.rst", "mongoc_gridfs_bucket_open_download_stream.rst", "mongoc_gridfs_bucket_open_upload_stream.rst", "mongoc_gridfs_bucket_open_upload_stream_with_id.rst", "mongoc_gridfs_bucket_stream_error.rst", "mongoc_gridfs_bucket_t.rst", "mongoc_gridfs_bucket_upload_from_stream.rst", "mongoc_gridfs_bucket_upload_from_stream_with_id.rst", "mongoc_gridfs_create_file.rst", "mongoc_gridfs_create_file_from_stream.rst", "mongoc_gridfs_destroy.rst", "mongoc_gridfs_drop.rst", "mongoc_gridfs_file_destroy.rst", "mongoc_gridfs_file_error.rst", "mongoc_gridfs_file_get_aliases.rst", "mongoc_gridfs_file_get_chunk_size.rst", "mongoc_gridfs_file_get_content_type.rst", "mongoc_gridfs_file_get_filename.rst", "mongoc_gridfs_file_get_id.rst", "mongoc_gridfs_file_get_length.rst", "mongoc_gridfs_file_get_md5.rst", "mongoc_gridfs_file_get_metadata.rst", "mongoc_gridfs_file_get_upload_date.rst", "mongoc_gridfs_file_list_destroy.rst", "mongoc_gridfs_file_list_error.rst", "mongoc_gridfs_file_list_next.rst", "mongoc_gridfs_file_list_t.rst", "mongoc_gridfs_file_opt_t.rst", "mongoc_gridfs_file_readv.rst", "mongoc_gridfs_file_remove.rst", "mongoc_gridfs_file_save.rst", "mongoc_gridfs_file_seek.rst", "mongoc_gridfs_file_set_aliases.rst", "mongoc_gridfs_file_set_content_type.rst", "mongoc_gridfs_file_set_filename.rst", "mongoc_gridfs_file_set_id.rst", "mongoc_gridfs_file_set_md5.rst", "mongoc_gridfs_file_set_metadata.rst", "mongoc_gridfs_file_t.rst", "mongoc_gridfs_file_tell.rst", "mongoc_gridfs_file_writev.rst", "mongoc_gridfs_find.rst", "mongoc_gridfs_find_one.rst", "mongoc_gridfs_find_one_by_filename.rst", "mongoc_gridfs_find_one_with_opts.rst", "mongoc_gridfs_find_with_opts.rst", "mongoc_gridfs_get_chunks.rst", "mongoc_gridfs_get_files.rst", "mongoc_gridfs_remove_by_filename.rst", "mongoc_gridfs_t.rst", "mongoc_handshake_data_append.rst", "mongoc_host_list_t.rst", "mongoc_index_opt_geo_get_default.rst", "mongoc_index_opt_geo_init.rst", "mongoc_index_opt_geo_t.rst", "mongoc_index_opt_get_default.rst", "mongoc_index_opt_init.rst", "mongoc_index_opt_t.rst", "mongoc_index_opt_wt_get_default.rst", "mongoc_index_opt_wt_init.rst", "mongoc_index_opt_wt_t.rst", "mongoc_init.rst", "mongoc_insert_flags_t.rst", "mongoc_iovec_t.rst", "mongoc_matcher_destroy.rst", "mongoc_matcher_match.rst", "mongoc_matcher_new.rst", "mongoc_matcher_t.rst", "mongoc_optional_copy.rst", "mongoc_optional_init.rst", "mongoc_optional_is_set.rst", "mongoc_optional_set_value.rst", "mongoc_optional_t.rst", "mongoc_optional_value.rst", "mongoc_query_flags_t.rst", "mongoc_rand.rst", "mongoc_rand_add.rst", "mongoc_rand_seed.rst", "mongoc_rand_status.rst", "mongoc_read_concern_append.rst", "mongoc_read_concern_copy.rst", "mongoc_read_concern_destroy.rst", "mongoc_read_concern_get_level.rst", "mongoc_read_concern_is_default.rst", "mongoc_read_concern_new.rst", "mongoc_read_concern_set_level.rst", "mongoc_read_concern_t.rst", "mongoc_read_mode_t.rst", "mongoc_read_prefs_add_tag.rst", "mongoc_read_prefs_copy.rst", "mongoc_read_prefs_destroy.rst", "mongoc_read_prefs_get_hedge.rst", "mongoc_read_prefs_get_max_staleness_seconds.rst", "mongoc_read_prefs_get_mode.rst", "mongoc_read_prefs_get_tags.rst", "mongoc_read_prefs_is_valid.rst", "mongoc_read_prefs_new.rst", "mongoc_read_prefs_set_hedge.rst", "mongoc_read_prefs_set_max_staleness_seconds.rst", "mongoc_read_prefs_set_mode.rst", "mongoc_read_prefs_set_tags.rst", "mongoc_read_prefs_t.rst", "mongoc_remove_flags_t.rst", "mongoc_reply_flags_t.rst", "mongoc_server_api_copy.rst", "mongoc_server_api_deprecation_errors.rst", "mongoc_server_api_destroy.rst", "mongoc_server_api_get_deprecation_errors.rst", "mongoc_server_api_get_strict.rst", "mongoc_server_api_get_version.rst", "mongoc_server_api_new.rst", "mongoc_server_api_strict.rst", "mongoc_server_api_t.rst", "mongoc_server_api_version_from_string.rst", "mongoc_server_api_version_t.rst", "mongoc_server_api_version_to_string.rst", "mongoc_server_description_destroy.rst", "mongoc_server_description_hello_response.rst", "mongoc_server_description_host.rst", "mongoc_server_description_id.rst", "mongoc_server_description_ismaster.rst", "mongoc_server_description_last_update_time.rst", "mongoc_server_description_new_copy.rst", "mongoc_server_description_round_trip_time.rst", "mongoc_server_description_t.rst", "mongoc_server_description_type.rst", "mongoc_server_descriptions_destroy_all.rst", "mongoc_session_opt_t.rst", "mongoc_session_opts_clone.rst", "mongoc_session_opts_destroy.rst", "mongoc_session_opts_get_causal_consistency.rst", "mongoc_session_opts_get_default_transaction_opts.rst", "mongoc_session_opts_get_snapshot.rst", "mongoc_session_opts_get_transaction_opts.rst", "mongoc_session_opts_new.rst", "mongoc_session_opts_set_causal_consistency.rst", "mongoc_session_opts_set_default_transaction_opts.rst", "mongoc_session_opts_set_snapshot.rst", "mongoc_socket_accept.rst", "mongoc_socket_bind.rst", "mongoc_socket_close.rst", "mongoc_socket_connect.rst", "mongoc_socket_destroy.rst", "mongoc_socket_errno.rst", "mongoc_socket_getnameinfo.rst", "mongoc_socket_getsockname.rst", "mongoc_socket_listen.rst", "mongoc_socket_new.rst", "mongoc_socket_recv.rst", "mongoc_socket_send.rst", "mongoc_socket_sendv.rst", "mongoc_socket_setsockopt.rst", "mongoc_socket_t.rst", "mongoc_ssl_opt_get_default.rst", "mongoc_ssl_opt_t.rst", "mongoc_stream_buffered_new.rst", "mongoc_stream_buffered_t.rst", "mongoc_stream_close.rst", "mongoc_stream_cork.rst", "mongoc_stream_destroy.rst", "mongoc_stream_file_get_fd.rst", "mongoc_stream_file_new.rst", "mongoc_stream_file_new_for_path.rst", "mongoc_stream_file_t.rst", "mongoc_stream_flush.rst", "mongoc_stream_get_base_stream.rst", "mongoc_stream_gridfs_new.rst", "mongoc_stream_read.rst", "mongoc_stream_readv.rst", "mongoc_stream_setsockopt.rst", "mongoc_stream_should_retry.rst", "mongoc_stream_socket_get_socket.rst", "mongoc_stream_socket_new.rst", "mongoc_stream_socket_t.rst", "mongoc_stream_t.rst", "mongoc_stream_timed_out.rst", "mongoc_stream_tls_t.rst", "mongoc_stream_uncork.rst", "mongoc_stream_write.rst", "mongoc_stream_writev.rst", "mongoc_topology_description_destroy.rst", "mongoc_topology_description_get_servers.rst", "mongoc_topology_description_has_readable_server.rst", "mongoc_topology_description_has_writable_server.rst", "mongoc_topology_description_new_copy.rst", "mongoc_topology_description_t.rst", "mongoc_topology_description_type.rst", "mongoc_transaction_opt_t.rst", "mongoc_transaction_opts_clone.rst", "mongoc_transaction_opts_destroy.rst", "mongoc_transaction_opts_get_max_commit_time_ms.rst", "mongoc_transaction_opts_get_read_concern.rst", "mongoc_transaction_opts_get_read_prefs.rst", "mongoc_transaction_opts_get_write_concern.rst", "mongoc_transaction_opts_new.rst", "mongoc_transaction_opts_set_max_commit_time_ms.rst", "mongoc_transaction_opts_set_read_concern.rst", "mongoc_transaction_opts_set_read_prefs.rst", "mongoc_transaction_opts_set_write_concern.rst", "mongoc_transaction_state_t.rst", "mongoc_update_flags_t.rst", "mongoc_uri_copy.rst", "mongoc_uri_destroy.rst", "mongoc_uri_get_auth_mechanism.rst", "mongoc_uri_get_auth_source.rst", "mongoc_uri_get_compressors.rst", "mongoc_uri_get_database.rst", "mongoc_uri_get_hosts.rst", "mongoc_uri_get_mechanism_properties.rst", "mongoc_uri_get_option_as_bool.rst", "mongoc_uri_get_option_as_int32.rst", "mongoc_uri_get_option_as_int64.rst", "mongoc_uri_get_option_as_utf8.rst", "mongoc_uri_get_options.rst", "mongoc_uri_get_password.rst", "mongoc_uri_get_read_concern.rst", "mongoc_uri_get_read_prefs.rst", "mongoc_uri_get_read_prefs_t.rst", "mongoc_uri_get_replica_set.rst", "mongoc_uri_get_service.rst", "mongoc_uri_get_srv_hostname.rst", "mongoc_uri_get_srv_service_name.rst", "mongoc_uri_get_ssl.rst", "mongoc_uri_get_string.rst", "mongoc_uri_get_tls.rst", "mongoc_uri_get_username.rst", "mongoc_uri_get_write_concern.rst", "mongoc_uri_has_option.rst", "mongoc_uri_new.rst", "mongoc_uri_new_for_host_port.rst", "mongoc_uri_new_with_error.rst", "mongoc_uri_option_is_bool.rst", "mongoc_uri_option_is_int32.rst", "mongoc_uri_option_is_int64.rst", "mongoc_uri_option_is_utf8.rst", "mongoc_uri_set_auth_mechanism.rst", "mongoc_uri_set_auth_source.rst", "mongoc_uri_set_compressors.rst", "mongoc_uri_set_database.rst", "mongoc_uri_set_mechanism_properties.rst", "mongoc_uri_set_option_as_bool.rst", "mongoc_uri_set_option_as_int32.rst", "mongoc_uri_set_option_as_int64.rst", "mongoc_uri_set_option_as_utf8.rst", "mongoc_uri_set_password.rst", "mongoc_uri_set_read_concern.rst", "mongoc_uri_set_read_prefs_t.rst", "mongoc_uri_set_username.rst", "mongoc_uri_set_write_concern.rst", "mongoc_uri_t.rst", "mongoc_uri_unescape.rst", "mongoc_version.rst", "mongoc_write_concern_append.rst", "mongoc_write_concern_copy.rst", "mongoc_write_concern_destroy.rst", "mongoc_write_concern_get_fsync.rst", "mongoc_write_concern_get_journal.rst", "mongoc_write_concern_get_w.rst", "mongoc_write_concern_get_wmajority.rst", "mongoc_write_concern_get_wtag.rst", "mongoc_write_concern_get_wtimeout.rst", "mongoc_write_concern_get_wtimeout_int64.rst", "mongoc_write_concern_is_acknowledged.rst", "mongoc_write_concern_is_default.rst", "mongoc_write_concern_is_valid.rst", "mongoc_write_concern_journal_is_set.rst", "mongoc_write_concern_new.rst", "mongoc_write_concern_set_fsync.rst", "mongoc_write_concern_set_journal.rst", "mongoc_write_concern_set_w.rst", "mongoc_write_concern_set_wmajority.rst", "mongoc_write_concern_set_wtag.rst", "mongoc_write_concern_set_wtimeout.rst", "mongoc_write_concern_set_wtimeout_int64.rst", "mongoc_write_concern_t.rst", "queryable-encryption.rst", "tutorial.rst", "using_client_side_encryption.rst", "visual-studio-guide.rst"], "titles": ["Advanced Connections", "Aggregation Framework Examples", "API Reference", "Application Performance Monitoring (APM)", "Authentication", "Basic Troubleshooting", "Bulk Write Operations", "Configuring TLS", "Connection Pooling", "Creating Indexes", "Cursors", "Aids for Debugging", "\u201cdistinct\u201d and \u201cmapReduce\u201d", "Error Reporting", "Index", "GridFS", "Guides", "libmongoc", "Initialization and cleanup", "Installing the MongoDB C Driver (libmongoc) and BSON library (libbson)", "Object Lifecycle", "Logging", "Client Side Document Matching", "Common Tasks", "mongoc_apm_callbacks_destroy()", "mongoc_apm_callbacks_new()", "mongoc_apm_callbacks_t", "mongoc_apm_command_failed_get_command_name()", "mongoc_apm_command_failed_get_context()", "mongoc_apm_command_failed_get_duration()", "mongoc_apm_command_failed_get_error()", "mongoc_apm_command_failed_get_host()", "mongoc_apm_command_failed_get_operation_id()", "mongoc_apm_command_failed_get_reply()", "mongoc_apm_command_failed_get_request_id()", "mongoc_apm_command_failed_get_server_connection_id()", "mongoc_apm_command_failed_get_server_id()", "mongoc_apm_command_failed_get_service_id()", "mongoc_apm_command_failed_t", "mongoc_apm_command_started_get_command()", "mongoc_apm_command_started_get_command_name()", "mongoc_apm_command_started_get_context()", "mongoc_apm_command_started_get_database_name()", "mongoc_apm_command_started_get_host()", "mongoc_apm_command_started_get_operation_id()", "mongoc_apm_command_started_get_request_id()", "mongoc_apm_command_started_get_server_connection_id()", "mongoc_apm_command_started_get_server_id()", "mongoc_apm_command_started_get_service_id()", "mongoc_apm_command_started_t", "mongoc_apm_command_succeeded_get_command_name()", "mongoc_apm_command_succeeded_get_context()", "mongoc_apm_command_succeeded_get_duration()", "mongoc_apm_command_succeeded_get_host()", "mongoc_apm_command_succeeded_get_operation_id()", "mongoc_apm_command_succeeded_get_reply()", "mongoc_apm_command_succeeded_get_request_id()", "mongoc_apm_command_succeeded_get_server_connection_id()", "mongoc_apm_command_succeeded_get_server_id()", "mongoc_apm_command_succeeded_get_service_id()", "mongoc_apm_command_succeeded_t", "mongoc_apm_server_changed_get_context()", "mongoc_apm_server_changed_get_host()", "mongoc_apm_server_changed_get_new_description()", "mongoc_apm_server_changed_get_previous_description()", "mongoc_apm_server_changed_get_topology_id()", "mongoc_apm_server_changed_t", "mongoc_apm_server_closed_get_context()", "mongoc_apm_server_closed_get_host()", "mongoc_apm_server_closed_get_topology_id()", "mongoc_apm_server_closed_t", "mongoc_apm_server_heartbeat_failed_get_awaited()", "mongoc_apm_server_heartbeat_failed_get_context()", "mongoc_apm_server_heartbeat_failed_get_duration()", "mongoc_apm_server_heartbeat_failed_get_error()", "mongoc_apm_server_heartbeat_failed_get_host()", "mongoc_apm_server_heartbeat_failed_t", "mongoc_apm_server_heartbeat_started_get_awaited()", "mongoc_apm_server_heartbeat_started_get_context()", "mongoc_apm_server_heartbeat_started_get_host()", "mongoc_apm_server_heartbeat_started_t", "mongoc_apm_server_heartbeat_succeeded_get_awaited()", "mongoc_apm_server_heartbeat_succeeded_get_context()", "mongoc_apm_server_heartbeat_succeeded_get_duration()", "mongoc_apm_server_heartbeat_succeeded_get_host()", "mongoc_apm_server_heartbeat_succeeded_get_reply()", "mongoc_apm_server_heartbeat_succeeded_t", "mongoc_apm_server_opening_get_context()", "mongoc_apm_server_opening_get_host()", "mongoc_apm_server_opening_get_topology_id()", "mongoc_apm_server_opening_t", "mongoc_apm_set_command_failed_cb()", "mongoc_apm_set_command_started_cb()", "mongoc_apm_set_command_succeeded_cb()", "mongoc_apm_set_server_changed_cb()", "mongoc_apm_set_server_closed_cb()", "mongoc_apm_set_server_heartbeat_failed_cb()", "mongoc_apm_set_server_heartbeat_started_cb()", "mongoc_apm_set_server_heartbeat_succeeded_cb()", "mongoc_apm_set_server_opening_cb()", "mongoc_apm_set_topology_changed_cb()", "mongoc_apm_set_topology_closed_cb()", "mongoc_apm_set_topology_opening_cb()", "mongoc_apm_topology_changed_get_context()", "mongoc_apm_topology_changed_get_new_description()", "mongoc_apm_topology_changed_get_previous_description()", "mongoc_apm_topology_changed_get_topology_id()", "mongoc_apm_topology_changed_t", "mongoc_apm_topology_closed_get_context()", "mongoc_apm_topology_closed_get_topology_id()", "mongoc_apm_topology_closed_t", "mongoc_apm_topology_opening_get_context()", "mongoc_apm_topology_opening_get_topology_id()", "mongoc_apm_topology_opening_t", "mongoc_auto_encryption_opts_destroy()", "mongoc_auto_encryption_opts_new()", "mongoc_auto_encryption_opts_set_bypass_auto_encryption()", "mongoc_auto_encryption_opts_set_bypass_query_analysis()", "mongoc_auto_encryption_opts_set_encrypted_fields_map()", "mongoc_auto_encryption_opts_set_extra()", "mongoc_auto_encryption_opts_set_keyvault_client()", "mongoc_auto_encryption_opts_set_keyvault_client_pool()", "mongoc_auto_encryption_opts_set_keyvault_namespace()", "mongoc_auto_encryption_opts_set_kms_credential_provider_callback()", "mongoc_auto_encryption_opts_set_kms_providers()", "mongoc_auto_encryption_opts_set_schema_map()", "mongoc_auto_encryption_opts_set_tls_opts()", "mongoc_auto_encryption_opts_t", "mongoc_bulk_operation_delete()", "mongoc_bulk_operation_delete_one()", "mongoc_bulk_operation_destroy()", "mongoc_bulk_operation_execute()", "mongoc_bulk_operation_get_hint()", "mongoc_bulk_operation_get_write_concern()", "mongoc_bulk_operation_insert()", "mongoc_bulk_operation_insert_with_opts()", "mongoc_bulk_operation_remove()", "mongoc_bulk_operation_remove_many_with_opts()", "mongoc_bulk_operation_remove_one()", "mongoc_bulk_operation_remove_one_with_opts()", "mongoc_bulk_operation_replace_one()", "mongoc_bulk_operation_replace_one_with_opts()", "mongoc_bulk_operation_set_bypass_document_validation()", "mongoc_bulk_operation_set_client_session()", "mongoc_bulk_operation_set_comment()", "mongoc_bulk_operation_set_hint()", "mongoc_bulk_operation_set_let()", "mongoc_bulk_operation_t", "mongoc_bulk_operation_update()", "mongoc_bulk_operation_update_many_with_opts()", "mongoc_bulk_operation_update_one()", "mongoc_bulk_operation_update_one_with_opts()", "mongoc_change_stream_destroy()", "mongoc_change_stream_error_document()", "mongoc_change_stream_get_resume_token()", "mongoc_change_stream_next()", "mongoc_change_stream_t", "mongoc_check_version()", "mongoc_cleanup()", "mongoc_client_command()", "mongoc_client_command_simple()", "mongoc_client_command_simple_with_server_id()", "mongoc_client_command_with_opts()", "mongoc_client_destroy()", "mongoc_client_enable_auto_encryption()", "mongoc_client_encryption_add_key_alt_name()", "mongoc_client_encryption_create_datakey()", "mongoc_client_encryption_datakey_opts_destroy()", "mongoc_client_encryption_datakey_opts_new()", "mongoc_client_encryption_datakey_opts_set_keyaltnames()", "mongoc_client_encryption_datakey_opts_set_keymaterial()", "mongoc_client_encryption_datakey_opts_set_masterkey()", "mongoc_client_encryption_datakey_opts_t", "mongoc_client_decryption_decrypt()", "mongoc_client_encryption_delete_key()", "mongoc_client_encryption_destroy()", "mongoc_client_encryption_encrypt()", "mongoc_client_encryption_encrypt_opts_destroy()", "mongoc_client_encryption_encrypt_opts_new()", "mongoc_client_encryption_encrypt_opts_set_algorithm()", "mongoc_client_encryption_encrypt_opts_set_contention_factor()", "mongoc_client_encryption_encrypt_opts_set_keyaltname()", "mongoc_client_encryption_encrypt_opts_set_keyid()", "mongoc_client_encryption_encrypt_opts_set_query_type()", "mongoc_client_encryption_encrypt_opts_t", "mongoc_client_encryption_get_crypt_shared_version()", "mongoc_client_encryption_get_key()", "mongoc_client_encryption_get_key_by_alt_name()", "mongoc_client_encryption_get_keys()", "mongoc_client_encryption_new()", "mongoc_client_encryption_opts_destroy()", "mongoc_client_encryption_opts_new()", "mongoc_client_encryption_opts_set_keyvault_client()", "mongoc_client_encryption_opts_set_keyvault_namespace()", "mongoc_client_encryption_opts_set_kms_credential_provider_callback ()", "mongoc_client_encryption_opts_set_kms_providers()", "mongoc_client_encryption_opts_set_tls_opts()", "mongoc_client_encryption_opts_t", "mongoc_client_encryption_remove_key_alt_name()", "mongoc_client_encryption_rewrap_many_datakey()", "mongoc_client_encryption_rewrap_many_datakey_result_destroy()", "mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result()", "mongoc_client_encryption_rewrap_many_datakey_result_new()", "mongoc_client_encryption_rewrap_many_datakey_result_t", "mongoc_client_encryption_t", "mongoc_client_find_databases_with_opts()", "mongoc_client_get_collection()", "mongoc_client_get_crypt_shared_version()", "mongoc_client_get_database()", "mongoc_client_get_database_names()", "mongoc_client_get_database_names_with_opts()", "mongoc_client_get_default_database()", "mongoc_client_get_gridfs()", "mongoc_client_get_handshake_description()", "mongoc_client_get_max_bson_size()", "mongoc_client_get_max_message_size()", "mongoc_client_get_read_concern()", "mongoc_client_get_read_prefs()", "mongoc_client_get_server_description()", "mongoc_client_get_server_descriptions()", "mongoc_client_get_server_status()", "mongoc_client_get_uri()", "mongoc_client_get_write_concern()", "mongoc_client_new()", "mongoc_client_new_from_uri()", "mongoc_client_new_from_uri_with_error()", "mongoc_client_pool_destroy()", "mongoc_client_pool_enable_auto_encryption()", "mongoc_client_pool_max_size()", "mongoc_client_pool_min_size()", "mongoc_client_pool_new()", "mongoc_client_pool_new_with_error()", "mongoc_client_pool_pop()", "mongoc_client_pool_push()", "mongoc_client_pool_set_apm_callbacks()", "mongoc_client_pool_set_appname()", "mongoc_client_pool_set_error_api()", "mongoc_client_pool_set_server_api()", "mongoc_client_pool_set_ssl_opts()", "mongoc_client_pool_t", "mongoc_client_pool_try_pop()", "mongoc_client_read_command_with_opts()", "mongoc_client_read_write_command_with_opts()", "mongoc_client_reset()", "mongoc_client_select_server()", "mongoc_client_session_abort_transaction()", "mongoc_client_session_advance_cluster_time()", "mongoc_client_session_advance_operation_time()", "mongoc_client_session_append()", "mongoc_client_session_commit_transaction()", "mongoc_client_session_destroy()", "mongoc_client_session_get_client()", "mongoc_client_session_get_cluster_time()", "mongoc_client_session_get_dirty()", "mongoc_client_session_get_lsid()", "mongoc_client_session_get_operation_time()", "mongoc_client_session_get_opts()", "mongoc_client_session_get_server_id()", "mongoc_client_session_get_transaction_state()", "mongoc_client_session_in_transaction()", "mongoc_client_session_start_transaction()", "mongoc_client_session_t", "mongoc_client_session_with_transaction()", "mongoc_client_session_with_transaction_cb_t", "mongoc_client_set_apm_callbacks()", "mongoc_client_set_appname()", "mongoc_client_set_error_api()", "mongoc_client_set_read_concern()", "mongoc_client_set_read_prefs()", "mongoc_client_set_server_api()", "mongoc_client_set_ssl_opts()", "mongoc_client_set_stream_initiator()", "mongoc_client_set_write_concern()", "mongoc_client_start_session()", "mongoc_client_t", "mongoc_client_watch()", "mongoc_client_write_command_with_opts()", "mongoc_collection_aggregate()", "mongoc_collection_command()", "mongoc_collection_command_simple()", "mongoc_collection_command_with_opts()", "mongoc_collection_copy()", "mongoc_collection_count()", "mongoc_collection_count_documents()", "mongoc_collection_count_with_opts()", "mongoc_collection_create_bulk_operation()", "mongoc_collection_create_bulk_operation_with_opts()", "mongoc_collection_create_index()", "mongoc_collection_create_index_with_opts()", "mongoc_collection_delete()", "mongoc_collection_delete_many()", "mongoc_collection_delete_one()", "mongoc_collection_destroy()", "mongoc_collection_drop()", "mongoc_collection_drop_index()", "mongoc_collection_drop_index_with_opts()", "mongoc_collection_drop_with_opts()", "mongoc_collection_ensure_index()", "mongoc_collection_estimated_document_count()", "mongoc_collection_find()", "mongoc_collection_find_and_modify()", "mongoc_collection_find_and_modify_with_opts()", "mongoc_collection_find_indexes()", "mongoc_collection_find_indexes_with_opts()", "mongoc_collection_find_with_opts()", "mongoc_collection_get_last_error()", "mongoc_collection_get_name()", "mongoc_collection_get_read_concern()", "mongoc_collection_get_read_prefs()", "mongoc_collection_get_write_concern()", "mongoc_collection_insert()", "mongoc_collection_insert_bulk()", "mongoc_collection_insert_many()", "mongoc_collection_insert_one()", "mongoc_collection_keys_to_index_string()", "mongoc_collection_read_command_with_opts()", "mongoc_collection_read_write_command_with_opts()", "mongoc_collection_remove()", "mongoc_collection_rename()", "mongoc_collection_rename_with_opts()", "mongoc_collection_replace_one()", "mongoc_collection_save()", "mongoc_collection_set_read_concern()", "mongoc_collection_set_read_prefs()", "mongoc_collection_set_write_concern()", "mongoc_collection_stats()", "mongoc_collection_t", "mongoc_collection_update()", "mongoc_collection_update_many()", "mongoc_collection_update_one()", "mongoc_collection_validate()", "mongoc_collection_watch()", "mongoc_collection_write_command_with_opts()", "mongoc_cursor_clone()", "mongoc_cursor_current()", "mongoc_cursor_destroy()", "mongoc_cursor_error()", "mongoc_cursor_error_document()", "mongoc_cursor_get_batch_size()", "mongoc_cursor_get_hint()", "mongoc_cursor_get_host()", "mongoc_cursor_get_id()", "mongoc_cursor_get_limit()", "mongoc_cursor_get_max_await_time_ms()", "mongoc_cursor_is_alive()", "mongoc_cursor_more()", "mongoc_cursor_new_from_command_reply()", "mongoc_cursor_new_from_command_reply_with_opts()", "mongoc_cursor_next()", "mongoc_cursor_set_batch_size()", "mongoc_cursor_set_hint()", "mongoc_cursor_set_limit()", "mongoc_cursor_set_max_await_time_ms()", "mongoc_cursor_t", "mongoc_database_add_user()", "mongoc_database_aggregate()", "mongoc_database_command()", "mongoc_database_command_simple()", "mongoc_database_command_with_opts()", "mongoc_database_copy()", "mongoc_database_create_collection()", "mongoc_database_destroy()", "mongoc_database_drop()", "mongoc_database_drop_with_opts()", "mongoc_database_find_collections()", "mongoc_database_find_collections_with_opts()", "mongoc_database_get_collection()", "mongoc_database_get_collection_names()", "mongoc_database_get_collection_names_with_opts()", "mongoc_database_get_name()", "mongoc_database_get_read_concern()", "mongoc_database_get_read_prefs()", "mongoc_database_get_write_concern()", "mongoc_database_has_collection()", "mongoc_database_read_command_with_opts()", "mongoc_database_read_write_command_with_opts()", "mongoc_database_remove_all_users()", "mongoc_database_remove_user()", "mongoc_database_set_read_concern()", "mongoc_database_set_read_prefs()", "mongoc_database_set_write_concern()", "mongoc_database_t", "mongoc_database_watch()", "mongoc_database_write_command_with_opts()", "mongoc_delete_flags_t", "mongoc_error_has_label()", "mongoc_find_and_modify_opts_append()", "mongoc_find_and_modify_opts_destroy()", "mongoc_find_and_modify_opts_get_bypass_document_validation()", "mongoc_find_and_modify_opts_get_fields()", "mongoc_find_and_modify_opts_get_flags()", "mongoc_find_and_modify_opts_get_max_time_ms()", "mongoc_find_and_modify_opts_get_sort()", "mongoc_find_and_modify_opts_get_update()", "mongoc_find_and_modify_opts_new()", "mongoc_find_and_modify_opts_set_bypass_document_validation()", "mongoc_find_and_modify_opts_set_fields()", "mongoc_find_and_modify_opts_set_flags()", "mongoc_find_and_modify_opts_set_max_time_ms()", "mongoc_find_and_modify_opts_set_sort()", "mongoc_find_and_modify_opts_set_update()", "mongoc_find_and_modify_opts_t", "mongoc_get_major_version()", "mongoc_get_micro_version()", "mongoc_get_minor_version()", "mongoc_get_version()", "mongoc_gridfs_bucket_abort_upload()", "mongoc_gridfs_bucket_delete_by_id()", "mongoc_gridfs_bucket_destroy()", "mongoc_gridfs_bucket_download_to_stream()", "mongoc_gridfs_bucket_find()", "mongoc_gridfs_bucket_new()", "mongoc_gridfs_bucket_open_download_stream()", "mongoc_gridfs_bucket_open_upload_stream()", "mongoc_gridfs_bucket_open_upload_stream_with_id()", "mongoc_gridfs_bucket_stream_error()", "mongoc_gridfs_bucket_t", "mongoc_gridfs_bucket_upload_from_stream()", "mongoc_gridfs_bucket_upload_from_stream_with_id()", "mongoc_gridfs_create_file()", "mongoc_gridfs_create_file_from_stream()", "mongoc_gridfs_destroy()", "mongoc_gridfs_drop()", "mongoc_gridfs_file_destroy()", "mongoc_gridfs_file_error()", "mongoc_gridfs_file_get_aliases()", "mongoc_gridfs_file_get_chunk_size()", "mongoc_gridfs_file_get_content_type()", "mongoc_gridfs_file_get_filename()", "mongoc_gridfs_file_get_id()", "mongoc_gridfs_file_get_length()", "mongoc_gridfs_file_get_md5()", "mongoc_gridfs_file_get_metadata()", "mongoc_gridfs_file_get_upload_date()", "mongoc_gridfs_file_list_destroy()", "mongoc_gridfs_file_list_error()", "mongoc_gridfs_file_list_next()", "mongoc_gridfs_file_list_t", "mongoc_gridfs_file_opt_t", "mongoc_gridfs_file_readv()", "mongoc_gridfs_file_remove()", "mongoc_gridfs_file_save()", "mongoc_gridfs_file_seek()", "mongoc_gridfs_file_set_aliases()", "mongoc_gridfs_file_set_content_type()", "mongoc_gridfs_file_set_filename()", "mongoc_gridfs_file_set_id()", "mongoc_gridfs_file_set_md5()", "mongoc_gridfs_file_set_metadata()", "mongoc_gridfs_file_t", "mongoc_gridfs_file_tell()", "mongoc_gridfs_file_writev()", "mongoc_gridfs_find()", "mongoc_gridfs_find_one()", "mongoc_gridfs_find_one_by_filename()", "mongoc_gridfs_find_one_with_opts()", "mongoc_gridfs_find_with_opts()", "mongoc_gridfs_get_chunks()", "mongoc_gridfs_get_files()", "mongoc_gridfs_remove_by_filename()", "mongoc_gridfs_t", "mongoc_handshake_data_append()", "mongoc_host_list_t", "mongoc_index_opt_geo_get_default()", "mongoc_index_opt_geo_init()", "mongoc_index_opt_geo_t", "mongoc_index_opt_get_default()", "mongoc_index_opt_init()", "mongoc_index_opt_t", "mongoc_index_opt_wt_get_default()", "mongoc_index_opt_wt_init()", "mongoc_index_opt_wt_t", "mongoc_init()", "mongoc_insert_flags_t", "mongoc_iovec_t", "mongoc_matcher_destroy()", "mongoc_matcher_match()", "mongoc_matcher_new()", "mongoc_matcher_t", "mongoc_optional_copy()", "mongoc_optional_init()", "mongoc_optional_is_set()", "mongoc_optional_set_value()", "mongoc_optional_t", "mongoc_optional_value()", "mongoc_query_flags_t", "mongoc_rand", "mongoc_rand_add()", "mongoc_rand_seed()", "mongoc_rand_status()", "mongoc_read_concern_append()", "mongoc_read_concern_copy()", "mongoc_read_concern_destroy()", "mongoc_read_concern_get_level()", "mongoc_read_concern_is_default()", "mongoc_read_concern_new()", "mongoc_read_concern_set_level()", "mongoc_read_concern_t", "mongoc_read_mode_t", "mongoc_read_prefs_add_tag()", "mongoc_read_prefs_copy()", "mongoc_read_prefs_destroy()", "mongoc_read_prefs_get_hedge()", "mongoc_read_prefs_get_max_staleness_seconds()", "mongoc_read_prefs_get_mode()", "mongoc_read_prefs_get_tags()", "mongoc_read_prefs_is_valid()", "mongoc_read_prefs_new()", "mongoc_read_prefs_set_hedge()", "mongoc_read_prefs_set_max_staleness_seconds()", "mongoc_read_prefs_set_mode()", "mongoc_read_prefs_set_tags()", "mongoc_read_prefs_t", "mongoc_remove_flags_t", "mongoc_reply_flags_t", "mongoc_server_api_copy()", "mongoc_server_api_deprecation_errors()", "mongoc_server_api_destroy()", "mongoc_server_api_get_deprecation_errors()", "mongoc_server_api_get_strict()", "mongoc_server_api_get_version()", "mongoc_server_api_new()", "mongoc_server_api_strict()", "mongoc_server_api_t", "mongoc_server_api_version_from_string()", "mongoc_server_api_version_t", "mongoc_server_api_version_to_string()", "mongoc_server_description_destroy()", "mongoc_server_description_hello_response()", "mongoc_server_description_host()", "mongoc_server_description_id()", "mongoc_server_description_ismaster()", "mongoc_server_description_last_update_time()", "mongoc_server_description_new_copy()", "mongoc_server_description_round_trip_time()", "mongoc_server_description_t", "mongoc_server_description_type()", "mongoc_server_descriptions_destroy_all()", "mongoc_session_opt_t", "mongoc_session_opts_clone()", "mongoc_session_opts_destroy()", "mongoc_session_opts_get_causal_consistency()", "mongoc_session_opts_get_default_transaction_opts()", "mongoc_session_opts_get_snapshot()", "mongoc_session_opts_get_transaction_opts()", "mongoc_session_opts_new()", "mongoc_session_opts_set_causal_consistency()", "mongoc_session_opts_set_default_transaction_opts()", "mongoc_session_opts_set_snapshot()", "mongoc_socket_accept()", "mongoc_socket_bind()", "mongoc_socket_close()", "mongoc_socket_connect()", "mongoc_socket_destroy()", "mongoc_socket_errno()", "mongoc_socket_getnameinfo()", "mongoc_socket_getsockname()", "mongoc_socket_listen()", "mongoc_socket_new()", "mongoc_socket_recv()", "mongoc_socket_send()", "mongoc_socket_sendv()", "mongoc_socket_setsockopt()", "mongoc_socket_t", "mongoc_ssl_opt_get_default()", "mongoc_ssl_opt_t", "mongoc_stream_buffered_new()", "mongoc_stream_buffered_t", "mongoc_stream_close()", "mongoc_stream_cork()", "mongoc_stream_destroy()", "mongoc_stream_file_get_fd()", "mongoc_stream_file_new()", "mongoc_stream_file_new_for_path()", "mongoc_stream_file_t", "mongoc_stream_flush()", "mongoc_stream_get_base_stream()", "mongoc_stream_gridfs_new()", "mongoc_stream_read()", "mongoc_stream_readv()", "mongoc_stream_setsockopt()", "mongoc_stream_should_retry()", "mongoc_stream_socket_get_socket()", "mongoc_stream_socket_new()", "mongoc_stream_socket_t", "mongoc_stream_t", "mongoc_stream_timed_out()", "mongoc_stream_tls_t", "mongoc_stream_uncork()", "mongoc_stream_write()", "mongoc_stream_writev()", "mongoc_topology_description_destroy()", "mongoc_topology_description_get_servers()", "mongoc_topology_description_has_readable_server()", "mongoc_topology_description_has_writable_server()", "mongoc_topology_description_new_copy()", "mongoc_topology_description_t", "mongoc_topology_description_type()", "mongoc_transaction_opt_t", "mongoc_transaction_opts_clone()", "mongoc_transaction_opts_destroy()", "mongoc_transaction_opts_get_max_commit_time_ms()", "mongoc_transaction_opts_get_read_concern()", "mongoc_transaction_opts_get_read_prefs()", "mongoc_transaction_opts_get_write_concern()", "mongoc_transaction_opts_new()", "mongoc_transaction_opts_set_max_commit_time_ms()", "mongoc_transaction_opts_set_read_concern()", "mongoc_transaction_opts_set_read_prefs()", "mongoc_transaction_opts_set_write_concern()", "mongoc_transaction_state_t", "mongoc_update_flags_t", "mongoc_uri_copy()", "mongoc_uri_destroy()", "mongoc_uri_get_auth_mechanism()", "mongoc_uri_get_auth_source()", "mongoc_uri_get_compressors()", "mongoc_uri_get_database()", "mongoc_uri_get_hosts()", "mongoc_uri_get_mechanism_properties()", "mongoc_uri_get_option_as_bool()", "mongoc_uri_get_option_as_int32()", "mongoc_uri_get_option_as_int64()", "mongoc_uri_get_option_as_utf8()", "mongoc_uri_get_options()", "mongoc_uri_get_password()", "mongoc_uri_get_read_concern()", "mongoc_uri_get_read_prefs()", "mongoc_uri_get_read_prefs_t()", "mongoc_uri_get_replica_set()", "mongoc_uri_get_service()", "mongoc_uri_get_srv_hostname()", "mongoc_uri_get_srv_service_name()", "mongoc_uri_get_ssl()", "mongoc_uri_get_string()", "mongoc_uri_get_tls()", "mongoc_uri_get_username()", "mongoc_uri_get_write_concern()", "mongoc_uri_has_option()", "mongoc_uri_new()", "mongoc_uri_new_for_host_port()", "mongoc_uri_new_with_error()", "mongoc_uri_option_is_bool()", "mongoc_uri_option_is_int32()", "mongoc_uri_option_is_int64()", "mongoc_uri_option_is_utf8()", "mongoc_uri_set_auth_mechanism()", "mongoc_uri_set_auth_source()", "mongoc_uri_set_compressors()", "mongoc_uri_set_database()", "mongoc_uri_set_mechanism_properties()", "mongoc_uri_set_option_as_bool()", "mongoc_uri_set_option_as_int32()", "mongoc_uri_set_option_as_int64()", "mongoc_uri_set_option_as_utf8()", "mongoc_uri_set_password()", "mongoc_uri_set_read_concern()", "mongoc_uri_set_read_prefs_t()", "mongoc_uri_set_username()", "mongoc_uri_set_write_concern()", "mongoc_uri_t", "mongoc_uri_unescape()", "Version Checks", "mongoc_write_concern_append()", "mongoc_write_concern_copy()", "mongoc_write_concern_destroy()", "mongoc_write_concern_get_fsync()", "mongoc_write_concern_get_journal()", "mongoc_write_concern_get_w()", "mongoc_write_concern_get_wmajority()", "mongoc_write_concern_get_wtag()", "mongoc_write_concern_get_wtimeout()", "mongoc_write_concern_get_wtimeout_int64()", "mongoc_write_concern_is_acknowledged()", "mongoc_write_concern_is_default()", "mongoc_write_concern_is_valid()", "mongoc_write_concern_journal_is_set()", "mongoc_write_concern_new()", "mongoc_write_concern_set_fsync()", "mongoc_write_concern_set_journal()", "mongoc_write_concern_set_w()", "mongoc_write_concern_set_wmajority()", "mongoc_write_concern_set_wtag()", "mongoc_write_concern_set_wtimeout()", "mongoc_write_concern_set_wtimeout_int64()", "mongoc_write_concern_t", "Experimental: Queryable Encryption", "Tutorial", "Using Client-Side Field Level Encryption", "Using libmongoc in a Microsoft Visual Studio project"], "terms": {"i": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689], "part": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689], "experiment": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 687, 688, 689], "queryabl": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 687, 688, 689], "encrypt": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 687, 689], "api": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689], "mai": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689], "subject": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689], "break": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689], "chang": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689], "futur": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689], "releas": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689], "The": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 17, 19, 20, 21, 22, 27, 28, 29, 31, 32, 33, 34, 35, 36, 39, 40, 41, 42, 43, 44, 45, 46, 47, 50, 51, 52, 53, 54, 55, 56, 57, 58, 61, 62, 63, 64, 65, 67, 68, 69, 72, 73, 75, 78, 79, 82, 83, 84, 85, 87, 88, 89, 103, 104, 105, 106, 108, 109, 111, 112, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 131, 132, 134, 135, 144, 145, 147, 154, 155, 156, 157, 159, 160, 161, 162, 164, 165, 166, 169, 170, 171, 173, 174, 176, 182, 185, 186, 187, 192, 193, 194, 195, 196, 198, 199, 204, 205, 206, 207, 208, 209, 210, 212, 213, 214, 215, 216, 217, 220, 222, 227, 228, 229, 232, 234, 235, 236, 238, 241, 242, 246, 247, 260, 262, 263, 264, 265, 266, 267, 268, 270, 271, 272, 274, 275, 276, 277, 278, 279, 280, 282, 283, 284, 285, 286, 288, 289, 290, 291, 296, 298, 302, 303, 305, 310, 311, 312, 313, 315, 316, 317, 318, 319, 320, 322, 323, 324, 325, 328, 329, 331, 332, 333, 337, 339, 346, 347, 348, 349, 350, 351, 352, 354, 355, 356, 357, 358, 360, 363, 364, 365, 374, 375, 378, 379, 380, 382, 383, 385, 386, 398, 400, 402, 403, 404, 409, 411, 413, 414, 416, 417, 418, 429, 439, 442, 451, 453, 460, 461, 462, 474, 485, 486, 489, 496, 497, 498, 503, 512, 514, 523, 525, 526, 528, 531, 532, 537, 542, 544, 547, 551, 556, 558, 559, 560, 561, 573, 578, 579, 580, 585, 589, 590, 607, 608, 609, 610, 611, 619, 620, 621, 622, 623, 638, 642, 643, 644, 645, 646, 647, 649, 651, 652, 653, 654, 655, 658, 660, 662, 666, 678, 681, 685, 687, 688, 689], "follow": [0, 1, 4, 5, 7, 10, 12, 13, 19, 21, 23, 115, 119, 124, 125, 126, 146, 156, 171, 195, 196, 241, 242, 260, 265, 276, 277, 279, 283, 286, 290, 291, 304, 315, 316, 320, 328, 329, 332, 355, 374, 375, 383, 386, 460, 512, 525, 660, 662, 687, 688, 689], "guid": [0, 4, 14, 17, 19, 114, 115, 116, 117, 118, 119, 120, 121, 122, 124, 125, 126, 127, 164, 192, 193, 195, 196, 204, 227, 687], "contain": [0, 4, 11, 12, 13, 15, 19, 33, 119, 122, 124, 126, 140, 141, 148, 149, 150, 151, 156, 159, 160, 162, 193, 195, 196, 205, 206, 210, 223, 241, 242, 262, 263, 275, 276, 277, 278, 279, 280, 282, 283, 284, 285, 289, 290, 291, 294, 295, 299, 300, 301, 302, 303, 304, 312, 313, 315, 316, 317, 320, 321, 325, 327, 328, 329, 331, 332, 355, 356, 357, 358, 364, 365, 367, 368, 373, 374, 375, 377, 381, 382, 383, 385, 410, 432, 438, 443, 444, 445, 447, 448, 454, 455, 456, 457, 458, 459, 460, 465, 468, 471, 476, 477, 487, 549, 552, 557, 558, 561, 562, 566, 624, 627, 639, 640, 641, 661, 668, 670, 671, 672, 682, 688], "inform": [0, 4, 5, 119, 131, 156, 218, 277, 282, 284, 293, 294, 299, 304, 318, 320, 328, 329, 330, 337, 355, 362, 461, 497, 510, 535, 627, 660, 680, 682, 685, 687], "specif": [0, 4, 12, 13, 15, 19, 22, 23, 119, 148, 149, 150, 151, 159, 160, 161, 162, 171, 199, 205, 210, 241, 242, 253, 276, 277, 280, 283, 284, 295, 296, 298, 303, 304, 314, 315, 316, 319, 332, 355, 358, 363, 365, 368, 374, 375, 383, 385, 416, 460, 468, 471, 476, 477, 512, 554, 596, 660, 687, 688], "certain": [0, 6, 13, 23, 660, 662], "type": [0, 5, 6, 11, 19, 20, 22, 147, 176, 183, 194, 213, 274, 304, 310, 312, 313, 427, 429, 444, 446, 460, 512, 523, 536, 558, 596, 597, 620, 621, 622, 623, 642, 643, 644, 645, 651, 652, 653, 654, 660, 687], "configur": [0, 3, 4, 8, 10, 11, 14, 16, 17, 18, 20, 21, 116, 124, 125, 126, 137, 139, 141, 149, 151, 162, 166, 176, 192, 195, 196, 204, 211, 216, 217, 222, 236, 238, 241, 242, 248, 256, 262, 266, 273, 276, 277, 280, 281, 283, 284, 290, 291, 295, 296, 298, 304, 315, 316, 320, 322, 328, 329, 332, 355, 358, 359, 363, 370, 372, 374, 375, 376, 378, 383, 461, 495, 512, 541, 543, 546, 547, 548, 565, 585, 598, 605, 606, 607, 608, 609, 626, 628, 637, 660, 677, 682, 688, 689], "For": [0, 4, 8, 13, 18, 19, 21, 119, 156, 205, 210, 241, 267, 268, 272, 276, 277, 282, 284, 293, 294, 298, 303, 304, 312, 315, 318, 332, 346, 347, 355, 360, 362, 365, 368, 374, 383, 460, 461, 494, 497, 508, 642, 643, 644, 645, 653, 660, 661, 674, 685, 687, 688], "exampl": [0, 4, 6, 8, 10, 11, 13, 14, 16, 17, 18, 21, 125, 126, 131, 158, 171, 196, 205, 250, 286, 288, 290, 291, 295, 296, 303, 305, 312, 313, 319, 320, 328, 345, 346, 347, 363, 385, 386, 411, 461, 462, 472, 494, 508, 538, 545, 642, 643, 644, 645, 646, 647, 649, 655, 658, 661, 674, 685, 687, 688], "simpl": [0, 12, 687], "standalon": [0, 536, 594, 660, 687], "see": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 18, 19, 21, 23, 119, 126, 131, 137, 139, 141, 148, 149, 150, 151, 156, 158, 162, 164, 166, 179, 196, 204, 205, 209, 210, 227, 236, 239, 241, 242, 248, 250, 251, 260, 261, 262, 266, 268, 274, 275, 276, 277, 280, 282, 283, 284, 286, 287, 288, 290, 291, 293, 294, 295, 296, 297, 298, 299, 301, 302, 303, 304, 305, 312, 313, 314, 315, 316, 318, 319, 320, 323, 328, 329, 330, 331, 332, 336, 337, 338, 344, 345, 349, 352, 355, 358, 360, 362, 363, 364, 365, 367, 368, 373, 374, 375, 379, 382, 383, 385, 386, 409, 410, 411, 416, 424, 452, 453, 454, 455, 456, 460, 468, 472, 476, 490, 496, 497, 498, 510, 535, 538, 540, 541, 542, 543, 544, 545, 546, 548, 596, 598, 601, 602, 603, 604, 660, 663, 680, 682, 685, 687, 688], "tutori": [0, 4, 6, 14, 17, 276, 332, 383, 689], "To": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13, 19, 20, 21, 22, 128, 129, 136, 137, 138, 139, 140, 141, 148, 149, 150, 151, 162, 164, 176, 205, 210, 213, 227, 241, 242, 261, 262, 273, 276, 277, 280, 283, 284, 290, 291, 295, 296, 298, 303, 304, 312, 313, 315, 316, 319, 328, 329, 332, 355, 358, 363, 365, 368, 374, 375, 383, 400, 401, 413, 414, 417, 418, 512, 538, 545, 660, 687, 688, 689], "establish": [0, 213, 214, 215, 275, 331, 353, 382, 687], "authent": [0, 5, 6, 12, 13, 14, 17, 19, 23, 164, 213, 227, 395, 614, 615, 619, 646, 647, 649, 650, 655, 658, 689], "enabl": [0, 5, 6, 7, 11, 12, 18, 21, 115, 120, 121, 127, 164, 227, 270, 284, 395, 508, 512, 548, 616, 648, 660, 662, 688], "page": [0, 20, 304, 687], "much": [0, 5], "like": [0, 1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 229, 241, 246, 277, 299, 304, 315, 352, 355, 365, 374, 398, 405, 444, 460, 461, 549, 550, 552, 621, 622, 660, 687, 689], "simpli": [0, 5, 12, 19, 262, 282, 284, 289, 299, 317, 345, 687], "specifi": [0, 1, 3, 4, 5, 7, 8, 12, 19, 124, 131, 137, 139, 141, 144, 145, 149, 151, 154, 155, 161, 195, 211, 218, 232, 275, 277, 282, 283, 284, 286, 290, 291, 296, 298, 299, 300, 308, 309, 312, 313, 320, 323, 328, 329, 331, 350, 355, 382, 386, 398, 399, 401, 413, 414, 417, 418, 419, 420, 427, 433, 454, 460, 473, 483, 485, 486, 487, 497, 507, 512, 513, 523, 525, 625, 633, 635, 660, 681, 685, 688], "name": [0, 1, 3, 4, 9, 11, 13, 19, 23, 27, 40, 42, 50, 122, 126, 132, 145, 146, 159, 160, 161, 162, 165, 169, 171, 181, 187, 193, 196, 198, 206, 208, 211, 212, 235, 241, 242, 265, 276, 277, 279, 286, 290, 291, 294, 295, 299, 306, 318, 319, 320, 328, 329, 339, 350, 354, 355, 360, 365, 366, 367, 368, 369, 373, 377, 383, 386, 411, 413, 414, 417, 418, 460, 461, 468, 555, 556, 562, 620, 621, 622, 623, 630, 631, 632, 638, 642, 643, 644, 645, 649, 650, 651, 652, 653, 654, 660, 687, 688], "us": [0, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 16, 17, 18, 19, 20, 21, 23, 26, 34, 45, 56, 114, 115, 116, 117, 118, 119, 120, 121, 122, 124, 125, 126, 127, 128, 129, 131, 132, 133, 137, 139, 141, 143, 145, 149, 151, 156, 158, 159, 160, 161, 162, 164, 166, 169, 170, 171, 172, 176, 179, 181, 182, 183, 184, 192, 193, 195, 196, 197, 199, 203, 204, 205, 206, 208, 209, 210, 211, 213, 214, 215, 220, 221, 223, 224, 225, 226, 227, 229, 230, 231, 232, 237, 239, 241, 242, 243, 244, 246, 247, 248, 252, 253, 255, 260, 261, 262, 266, 268, 269, 270, 271, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 295, 296, 297, 298, 299, 300, 302, 303, 304, 307, 308, 309, 311, 312, 313, 315, 316, 319, 320, 321, 322, 323, 324, 325, 326, 328, 329, 330, 331, 332, 333, 339, 341, 345, 346, 347, 349, 350, 351, 353, 355, 356, 357, 358, 359, 360, 363, 364, 365, 367, 368, 370, 371, 372, 374, 375, 378, 379, 380, 381, 382, 383, 384, 385, 386, 394, 400, 401, 409, 411, 413, 414, 416, 417, 418, 419, 420, 426, 429, 436, 438, 439, 449, 451, 452, 453, 454, 455, 456, 460, 461, 465, 468, 471, 472, 474, 477, 483, 485, 486, 490, 491, 495, 496, 507, 508, 509, 511, 512, 515, 523, 525, 528, 531, 533, 538, 545, 548, 552, 553, 554, 558, 559, 560, 561, 565, 566, 570, 571, 572, 573, 577, 578, 579, 583, 585, 589, 593, 594, 595, 611, 621, 622, 627, 630, 633, 635, 639, 640, 660, 662, 663, 664, 666, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685], "replicaset": [0, 3, 8, 10, 156, 219, 511, 629, 641, 645, 660], "myreplset": [0, 10, 641], "uri": [0, 1, 3, 6, 8, 9, 10, 12, 23, 119, 156, 205, 209, 210, 211, 219, 223, 224, 225, 230, 231, 232, 239, 241, 260, 261, 262, 267, 268, 272, 274, 275, 276, 277, 282, 283, 284, 298, 299, 300, 302, 303, 304, 315, 329, 331, 353, 355, 364, 365, 367, 368, 374, 382, 401, 409, 410, 452, 453, 454, 455, 456, 460, 462, 494, 565, 577, 598, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 674, 687], "includ": [0, 1, 3, 4, 6, 7, 9, 10, 11, 12, 13, 15, 17, 19, 21, 23, 132, 145, 156, 162, 171, 205, 210, 219, 226, 234, 239, 241, 242, 260, 261, 262, 264, 274, 276, 277, 278, 279, 280, 282, 283, 284, 295, 296, 298, 299, 300, 302, 303, 304, 310, 312, 313, 315, 316, 319, 329, 332, 337, 339, 346, 350, 353, 354, 355, 356, 358, 361, 363, 365, 368, 374, 375, 377, 381, 383, 385, 396, 413, 414, 416, 417, 418, 422, 437, 455, 456, 459, 460, 465, 468, 471, 474, 475, 478, 511, 535, 538, 563, 565, 570, 576, 598, 627, 649, 660, 662, 688, 689], "bson": [0, 10, 11, 13, 14, 17, 33, 124, 126, 135, 137, 139, 141, 146, 149, 151, 153, 155, 162, 165, 166, 173, 174, 176, 182, 186, 194, 195, 196, 198, 205, 210, 214, 241, 242, 247, 252, 254, 255, 262, 275, 276, 277, 279, 280, 282, 283, 284, 286, 288, 289, 290, 291, 295, 296, 298, 299, 303, 304, 310, 312, 313, 315, 316, 317, 319, 320, 328, 329, 331, 332, 337, 347, 348, 355, 358, 363, 365, 368, 374, 375, 382, 383, 386, 389, 392, 393, 411, 413, 414, 417, 418, 432, 443, 446, 448, 460, 478, 512, 528, 531, 611, 616, 624, 627, 650, 689], "h": [0, 1, 3, 6, 9, 10, 12, 23, 156, 239, 241, 260, 261, 262, 274, 276, 277, 279, 282, 283, 284, 298, 299, 300, 304, 329, 353, 355, 381, 416, 437, 460, 465, 468, 471, 474, 478, 511, 535, 538, 563, 598, 662, 688, 689], "mongoc": [0, 1, 3, 5, 6, 9, 10, 12, 19, 23, 156, 239, 241, 260, 261, 262, 274, 276, 277, 279, 282, 283, 284, 298, 299, 300, 304, 329, 353, 355, 381, 416, 437, 460, 461, 465, 468, 471, 474, 478, 486, 487, 488, 489, 511, 535, 538, 563, 585, 598, 662, 685, 688, 689], "int": [0, 1, 3, 6, 9, 10, 12, 21, 23, 156, 157, 239, 241, 260, 261, 262, 274, 276, 283, 298, 300, 329, 337, 353, 381, 401, 402, 403, 404, 416, 442, 460, 462, 478, 486, 487, 488, 489, 511, 550, 551, 552, 554, 556, 557, 558, 559, 562, 568, 569, 571, 572, 573, 575, 580, 588, 598, 687, 688], "main": [0, 1, 3, 5, 6, 9, 10, 12, 18, 20, 21, 23, 156, 239, 241, 260, 261, 262, 274, 276, 300, 329, 337, 353, 381, 401, 416, 460, 478, 511, 598, 687, 688], "argc": [0, 3, 9, 10, 12, 21, 23, 239, 241, 260, 261, 262, 274, 276, 337, 353, 381, 416, 460, 478, 598, 687], "char": [0, 1, 3, 6, 9, 10, 12, 21, 23, 27, 40, 42, 50, 122, 156, 159, 160, 161, 162, 165, 166, 169, 179, 181, 183, 185, 187, 193, 198, 199, 206, 207, 208, 209, 210, 212, 223, 235, 239, 241, 242, 260, 261, 262, 265, 274, 276, 279, 294, 295, 299, 300, 304, 306, 314, 318, 319, 329, 337, 353, 354, 360, 366, 367, 368, 369, 373, 377, 381, 385, 386, 395, 396, 397, 398, 399, 400, 401, 405, 413, 414, 416, 417, 418, 427, 428, 431, 438, 444, 445, 447, 454, 459, 460, 461, 462, 468, 471, 474, 478, 493, 496, 511, 524, 526, 536, 555, 565, 573, 597, 598, 614, 615, 617, 619, 620, 621, 622, 623, 625, 629, 630, 631, 632, 634, 636, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 651, 652, 653, 654, 655, 658, 661, 670, 682, 687, 688], "argv": [0, 3, 9, 10, 12, 21, 23, 239, 241, 260, 261, 262, 274, 276, 337, 353, 381, 416, 460, 478, 598, 687], "mongoc_client_t": [0, 1, 2, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14, 17, 20, 23, 116, 120, 121, 143, 156, 159, 160, 161, 162, 163, 164, 176, 192, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 229, 232, 233, 239, 240, 241, 242, 243, 244, 251, 260, 261, 262, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 275, 276, 296, 300, 329, 337, 346, 347, 353, 355, 381, 401, 416, 449, 460, 461, 511, 538, 545, 546, 548, 565, 598, 616, 648, 660, 687, 688], "client": [0, 1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 16, 17, 23, 34, 45, 56, 114, 115, 116, 117, 118, 119, 120, 121, 122, 124, 125, 126, 127, 135, 141, 143, 149, 151, 153, 156, 159, 160, 161, 162, 163, 164, 192, 193, 195, 196, 199, 204, 205, 206, 207, 208, 209, 210, 211, 212, 214, 215, 216, 217, 218, 219, 220, 221, 222, 226, 227, 229, 232, 233, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 250, 253, 260, 261, 262, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 285, 286, 290, 291, 296, 300, 312, 313, 320, 323, 326, 328, 329, 337, 345, 346, 347, 353, 355, 360, 363, 370, 372, 379, 381, 401, 416, 460, 461, 468, 478, 497, 503, 509, 511, 523, 528, 530, 531, 534, 546, 547, 548, 565, 598, 611, 616, 648, 660, 685, 687], "mongoc_init": [0, 1, 3, 5, 6, 9, 10, 12, 14, 18, 20, 21, 23, 156, 158, 239, 241, 260, 261, 262, 274, 276, 300, 337, 353, 381, 401, 416, 460, 461, 478, 511, 598, 687, 688], "creat": [0, 1, 3, 4, 5, 6, 8, 11, 13, 14, 16, 17, 18, 20, 25, 26, 115, 153, 155, 159, 166, 167, 171, 177, 189, 190, 200, 206, 208, 212, 221, 223, 224, 225, 230, 231, 232, 237, 251, 260, 261, 262, 273, 275, 277, 285, 286, 287, 288, 292, 296, 297, 314, 320, 328, 329, 331, 333, 337, 351, 352, 353, 354, 355, 356, 360, 378, 379, 380, 382, 394, 397, 401, 406, 409, 411, 413, 414, 415, 416, 417, 418, 419, 420, 429, 438, 468, 477, 479, 485, 495, 507, 511, 515, 521, 532, 538, 539, 545, 547, 558, 566, 572, 573, 577, 583, 598, 599, 605, 640, 660, 677, 688, 689], "our": [0, 5, 12, 262, 300, 687], "mongoc_client_new": [0, 4, 8, 14, 20, 211, 274, 296, 337, 381, 416, 511, 546, 548, 687, 688], "host01": 0, "27017": [0, 1, 3, 7, 12, 23, 156, 300, 329, 401, 416, 460, 641, 660, 687], "host02": 0, "host03": 0, "do": [0, 6, 9, 12, 13, 23, 163, 237, 239, 266, 269, 276, 332, 354, 383, 461, 473, 611, 660, 685, 687, 688], "some": [0, 7, 12, 13, 18, 20, 21, 22, 23, 158, 261, 273, 304, 346, 347, 352, 386, 398, 401, 460, 472, 473, 485, 486, 538, 545, 641, 652, 660], "work": [0, 19, 23, 119, 569, 574, 584, 587, 588, 687], "todo": 0, "clean": [0, 535, 687], "up": [0, 7, 12, 13, 261, 353, 460, 535, 660, 687, 688], "mongoc_client_destroi": [0, 1, 3, 6, 9, 10, 12, 14, 20, 23, 156, 211, 223, 224, 225, 241, 260, 261, 262, 274, 276, 296, 300, 329, 337, 353, 381, 401, 416, 460, 511, 598, 687, 688], "mongoc_cleanup": [0, 1, 3, 5, 6, 9, 12, 14, 18, 20, 21, 23, 156, 239, 241, 260, 261, 262, 274, 276, 300, 337, 353, 381, 401, 416, 460, 461, 472, 478, 511, 598, 687, 688], "return": [0, 1, 3, 6, 8, 9, 10, 12, 13, 20, 21, 23, 132, 156, 194, 233, 239, 250, 261, 274, 338, 342, 349, 352, 353, 381, 401, 416, 460, 462, 478, 482, 485, 494, 508, 512, 514, 536, 537, 538, 541, 543, 597, 598, 601, 620, 621, 622, 623, 638, 642, 643, 644, 645, 660, 673, 674, 683, 684, 687, 688], "0": [0, 1, 3, 4, 5, 6, 7, 9, 10, 11, 12, 18, 19, 21, 22, 23, 117, 118, 123, 124, 131, 156, 180, 183, 194, 195, 210, 219, 239, 241, 255, 257, 260, 261, 262, 274, 276, 282, 283, 284, 296, 298, 299, 300, 304, 329, 337, 346, 353, 368, 381, 384, 396, 398, 416, 442, 453, 454, 455, 460, 461, 468, 473, 475, 476, 477, 478, 485, 489, 496, 497, 498, 511, 513, 514, 546, 548, 550, 551, 552, 554, 556, 557, 558, 559, 560, 562, 565, 568, 569, 575, 578, 579, 580, 588, 589, 590, 598, 610, 611, 641, 660, 662, 671, 672, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689], "multipl": [0, 19, 20, 147, 228, 229, 232, 233, 240, 262, 327, 329, 399, 462, 485, 512, 660], "hostnam": [0, 4, 7, 640, 660], "can": [0, 1, 4, 5, 6, 7, 8, 10, 11, 12, 13, 18, 19, 20, 21, 23, 146, 155, 156, 162, 166, 169, 205, 210, 213, 232, 234, 235, 236, 238, 241, 242, 260, 262, 273, 274, 275, 276, 277, 278, 280, 283, 284, 286, 288, 290, 291, 295, 296, 298, 299, 302, 303, 304, 310, 312, 313, 315, 316, 319, 320, 326, 328, 329, 331, 332, 346, 348, 351, 354, 355, 356, 358, 363, 365, 368, 374, 375, 381, 382, 383, 386, 395, 401, 409, 412, 413, 414, 417, 418, 438, 441, 451, 452, 455, 456, 460, 462, 473, 478, 485, 486, 495, 496, 497, 506, 508, 512, 523, 547, 548, 560, 561, 598, 607, 608, 609, 621, 622, 641, 651, 652, 653, 654, 660, 662, 677, 678, 679, 680, 681, 682, 683, 684, 685, 687, 688, 689], "string": [0, 1, 4, 7, 8, 11, 12, 13, 22, 23, 27, 40, 42, 50, 119, 124, 125, 126, 137, 139, 141, 149, 151, 166, 169, 171, 181, 185, 195, 196, 207, 209, 210, 223, 238, 262, 265, 270, 275, 277, 283, 290, 291, 294, 295, 296, 304, 306, 314, 320, 328, 329, 331, 355, 367, 368, 369, 373, 377, 382, 386, 405, 411, 427, 428, 431, 444, 445, 447, 454, 459, 461, 497, 512, 524, 525, 526, 536, 555, 597, 614, 615, 617, 623, 625, 629, 630, 631, 632, 634, 636, 639, 640, 641, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 670, 682, 687, 688], "comma": [0, 512, 618, 648, 660], "separ": [0, 1, 19, 20, 23, 120, 121, 299, 304, 512, 618, 648, 660, 688], "host": [0, 3, 4, 23, 31, 43, 53, 62, 68, 75, 79, 84, 88, 119, 171, 211, 274, 340, 353, 462, 508, 512, 529, 612, 618, 630, 631, 660, 687], "seed": [0, 486, 488, 489], "list": [0, 4, 5, 7, 11, 13, 19, 31, 43, 53, 62, 68, 75, 79, 84, 88, 162, 169, 205, 209, 210, 219, 241, 242, 276, 277, 280, 298, 303, 304, 315, 316, 332, 355, 358, 360, 365, 368, 374, 375, 383, 416, 434, 435, 436, 437, 452, 456, 460, 462, 497, 512, 522, 523, 618, 660, 689], "It": [0, 1, 3, 4, 7, 10, 12, 15, 17, 18, 19, 23, 118, 121, 125, 131, 143, 144, 146, 147, 150, 151, 156, 158, 160, 180, 183, 213, 226, 238, 243, 248, 253, 267, 268, 270, 272, 274, 275, 277, 278, 296, 299, 302, 303, 304, 314, 331, 345, 351, 353, 355, 356, 365, 381, 382, 401, 416, 437, 438, 449, 460, 464, 467, 470, 472, 474, 478, 490, 512, 523, 549, 550, 552, 555, 557, 565, 566, 567, 570, 575, 577, 578, 589, 590, 619, 660, 663, 687, 688], "recommend": [0, 4, 7, 15, 19, 156, 274, 298, 688], "member": [0, 3, 13, 219, 512, 660], "allow": [0, 3, 6, 7, 15, 145, 156, 214, 215, 284, 350, 460, 474, 485, 486, 497, 512, 522, 523, 549, 585, 588, 611, 660, 685, 688], "driver": [0, 3, 4, 5, 6, 7, 8, 10, 11, 13, 14, 15, 17, 18, 21, 22, 23, 38, 49, 60, 66, 70, 76, 80, 86, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 107, 110, 113, 119, 125, 132, 145, 158, 213, 236, 238, 239, 244, 253, 265, 266, 270, 272, 273, 299, 304, 324, 339, 341, 346, 347, 350, 380, 386, 398, 401, 429, 460, 461, 472, 486, 512, 523, 525, 528, 531, 535, 585, 593, 594, 596, 621, 622, 649, 655, 658, 660, 662, 685, 687, 688, 689], "ani": [0, 5, 6, 7, 12, 13, 18, 20, 23, 100, 107, 119, 120, 121, 141, 146, 149, 151, 156, 158, 162, 192, 194, 229, 234, 241, 242, 248, 252, 255, 260, 261, 263, 264, 266, 270, 273, 274, 275, 276, 277, 280, 282, 284, 286, 290, 291, 300, 304, 310, 312, 313, 315, 316, 320, 328, 329, 331, 332, 350, 351, 355, 358, 374, 375, 382, 383, 386, 401, 407, 409, 412, 413, 414, 417, 418, 421, 423, 429, 434, 435, 446, 460, 461, 464, 467, 470, 472, 490, 497, 502, 505, 511, 512, 532, 538, 545, 547, 565, 575, 598, 633, 635, 648, 660, 663, 687, 688], "node": [0, 3, 274, 511, 512, 669, 681, 685], "mongo": [0, 1, 4, 10, 11, 13, 19, 22, 219, 241, 257, 276, 485, 535, 536, 594, 660, 687, 688, 689], "should": [0, 1, 7, 8, 10, 13, 18, 19, 20, 27, 31, 33, 37, 39, 40, 42, 43, 48, 50, 53, 55, 59, 62, 63, 64, 68, 75, 79, 84, 85, 88, 104, 105, 119, 120, 121, 125, 128, 129, 133, 140, 148, 149, 150, 151, 154, 156, 158, 159, 160, 163, 204, 206, 208, 209, 210, 211, 212, 214, 215, 216, 217, 220, 221, 222, 223, 224, 225, 226, 229, 230, 231, 243, 251, 262, 263, 271, 273, 274, 277, 278, 279, 281, 282, 283, 284, 285, 286, 287, 288, 289, 297, 298, 299, 300, 302, 303, 304, 305, 306, 307, 308, 309, 311, 314, 317, 321, 325, 328, 329, 330, 333, 334, 346, 355, 356, 359, 364, 365, 366, 367, 368, 369, 370, 371, 372, 384, 394, 395, 411, 416, 419, 420, 425, 427, 428, 429, 431, 432, 436, 444, 449, 452, 456, 457, 458, 460, 461, 464, 467, 468, 470, 472, 474, 477, 491, 495, 498, 500, 502, 505, 507, 512, 526, 531, 533, 549, 552, 553, 555, 556, 558, 564, 566, 567, 571, 572, 573, 583, 584, 595, 611, 612, 614, 615, 616, 617, 618, 619, 624, 625, 626, 627, 628, 629, 630, 633, 634, 635, 636, 637, 640, 660, 661, 664, 666, 667, 669, 670, 671, 672, 677, 681, 683, 684, 686, 687, 688], "c": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 21, 22, 23, 145, 156, 158, 213, 236, 238, 239, 241, 244, 260, 261, 262, 266, 270, 274, 276, 299, 300, 304, 329, 346, 347, 350, 353, 365, 386, 395, 396, 397, 398, 399, 400, 401, 416, 429, 460, 461, 472, 474, 486, 598, 660, 662, 688, 689], "automat": [0, 7, 10, 11, 19, 20, 116, 117, 120, 121, 125, 127, 156, 164, 166, 176, 206, 208, 213, 227, 244, 260, 299, 413, 417, 548, 685], "detect": [0, 13, 19, 468], "ha": [0, 1, 3, 7, 8, 10, 13, 20, 120, 121, 145, 153, 154, 174, 186, 187, 213, 214, 215, 219, 232, 241, 246, 247, 252, 253, 255, 259, 261, 262, 265, 273, 277, 282, 284, 315, 321, 329, 334, 335, 336, 337, 341, 344, 345, 346, 350, 351, 355, 374, 424, 435, 482, 489, 494, 496, 497, 502, 514, 526, 538, 545, 552, 554, 565, 581, 586, 593, 594, 610, 624, 625, 627, 628, 636, 637, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 670, 674, 678, 679, 680, 681, 682, 683, 684, 685, 687], "If": [0, 4, 5, 8, 10, 11, 12, 19, 20, 21, 33, 116, 119, 141, 149, 151, 153, 155, 159, 170, 180, 185, 199, 205, 207, 209, 210, 213, 218, 232, 234, 235, 239, 241, 244, 248, 249, 250, 252, 255, 262, 263, 264, 266, 271, 273, 275, 277, 282, 283, 284, 285, 288, 289, 290, 291, 295, 296, 298, 299, 300, 301, 302, 303, 304, 310, 312, 313, 315, 317, 318, 319, 320, 321, 327, 328, 329, 331, 335, 337, 349, 350, 351, 355, 360, 363, 364, 365, 367, 368, 373, 374, 382, 386, 395, 409, 410, 441, 446, 452, 453, 454, 455, 456, 461, 484, 490, 493, 511, 514, 544, 546, 548, 560, 561, 578, 585, 589, 611, 619, 620, 621, 622, 623, 660, 661, 663, 668, 673, 680, 681, 687, 688, 689], "more": [0, 4, 8, 10, 11, 21, 118, 119, 125, 148, 149, 150, 151, 156, 199, 277, 282, 284, 293, 294, 299, 304, 318, 320, 328, 329, 330, 345, 346, 347, 353, 355, 362, 397, 461, 497, 510, 549, 581, 611, 648, 660, 680, 682, 685, 687, 688], "than": [0, 1, 4, 8, 9, 12, 13, 19, 118, 125, 156, 157, 246, 247, 265, 295, 304, 314, 461, 485, 486, 497, 503, 509, 563, 611, 660, 687, 688], "one": [0, 1, 6, 8, 11, 13, 19, 20, 124, 156, 195, 213, 226, 232, 239, 240, 241, 261, 273, 274, 276, 284, 290, 291, 313, 314, 320, 328, 329, 349, 397, 415, 441, 442, 449, 451, 473, 512, 536, 538, 545, 547, 597, 648, 660, 686, 687], "attempt": [0, 4, 6, 7, 13, 19, 119, 156, 213, 237, 262, 263, 269, 285, 286, 312, 337, 356, 363, 546, 548, 660, 685], "failov": [0, 205, 209, 210, 241, 260, 275, 277, 282, 283, 284, 298, 299, 302, 303, 304, 315, 331, 355, 364, 365, 367, 368, 374, 382, 409, 410, 452, 453, 454, 455, 456, 598, 660], "between": [0, 4, 337, 549, 550, 552, 563, 660], "instanc": [0, 1, 12, 23, 212, 216, 217, 222, 262, 416, 423, 457, 458, 460, 511, 626, 628, 637, 660, 687], "paramet": [0, 13, 535, 596, 660], "when": [0, 4, 5, 6, 7, 8, 10, 13, 15, 19, 20, 21, 26, 38, 49, 60, 66, 70, 76, 80, 86, 90, 107, 110, 113, 119, 123, 145, 153, 155, 159, 171, 180, 183, 194, 199, 206, 208, 211, 213, 223, 224, 225, 230, 231, 232, 242, 243, 244, 260, 262, 270, 273, 274, 275, 277, 278, 279, 281, 283, 285, 286, 299, 302, 303, 304, 316, 320, 328, 329, 331, 333, 339, 341, 346, 347, 350, 355, 356, 359, 364, 365, 375, 382, 394, 395, 402, 403, 404, 420, 436, 438, 452, 454, 455, 456, 459, 461, 462, 474, 477, 485, 491, 495, 497, 512, 515, 532, 533, 535, 547, 553, 556, 558, 561, 566, 572, 573, 578, 583, 595, 598, 611, 621, 640, 653, 660, 664, 677, 680, 685, 687, 688, 689], "invalid": [0, 4, 7, 13, 23, 121, 135, 137, 139, 141, 149, 151, 160, 161, 162, 220, 234, 236, 241, 242, 243, 245, 248, 249, 260, 264, 266, 275, 276, 279, 280, 288, 289, 290, 291, 295, 296, 301, 310, 311, 312, 313, 315, 316, 317, 319, 320, 321, 325, 327, 328, 329, 330, 331, 332, 337, 350, 351, 354, 357, 358, 363, 373, 374, 375, 376, 377, 382, 383, 386, 422, 440, 446, 459, 477, 490, 514, 570, 612, 619, 620, 621, 622, 623, 661, 663, 675, 688], "myshard01": 0, "someth": [0, 3, 12, 19, 23, 239, 405, 444, 461, 687], "free": [0, 20, 24, 25, 130, 163, 166, 167, 173, 175, 176, 177, 190, 200, 212, 226, 250, 261, 273, 335, 361, 387, 416, 434, 453, 454, 455, 460, 475, 492, 501, 517, 521, 527, 529, 537, 538, 540, 545, 570, 591, 600, 613, 665], "resolv": [0, 119, 337, 660], "howev": [0, 6, 10, 213, 262, 299, 512, 660, 685, 687], "directli": [0, 4, 8, 19, 20, 219, 220, 299, 325, 330, 386, 486, 563, 660], "wrap": [0, 145, 213, 244, 253, 274, 346, 347, 350, 353, 460, 461, 576, 580, 585], "mongoc_uri_t": [0, 1, 2, 3, 4, 6, 7, 8, 9, 10, 12, 14, 17, 23, 156, 205, 209, 210, 221, 224, 225, 230, 231, 239, 241, 260, 261, 262, 274, 275, 276, 277, 282, 283, 284, 298, 299, 300, 302, 303, 304, 315, 329, 331, 353, 355, 364, 365, 367, 368, 374, 382, 401, 409, 410, 452, 453, 454, 455, 456, 460, 598, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 687], "mongoc_uri_new": [0, 4, 7, 8, 14, 616, 619, 648, 650, 660], "1": [0, 1, 3, 5, 6, 7, 9, 10, 11, 12, 13, 17, 19, 22, 23, 35, 46, 57, 117, 118, 123, 156, 180, 183, 194, 219, 239, 241, 242, 260, 261, 262, 274, 276, 282, 283, 284, 298, 299, 300, 304, 316, 329, 337, 346, 347, 353, 375, 384, 386, 395, 396, 397, 398, 399, 400, 401, 405, 416, 439, 442, 451, 460, 461, 462, 473, 485, 489, 496, 498, 511, 512, 513, 514, 525, 546, 550, 551, 552, 556, 557, 559, 560, 561, 562, 565, 568, 569, 575, 578, 579, 580, 588, 589, 590, 598, 610, 611, 641, 646, 660, 662, 678, 679, 680, 681, 682, 683, 684, 685, 687, 688, 689], "both": [0, 8, 19, 213, 242, 304, 316, 375, 460, 546, 548, 653, 660], "dn": [0, 13, 660], "record": [0, 299, 353, 660], "behavior": [0, 7, 8, 12, 13, 119, 126, 156, 196, 205, 209, 210, 229, 241, 275, 277, 282, 283, 284, 299, 302, 303, 304, 315, 331, 344, 355, 364, 365, 367, 368, 374, 382, 409, 410, 452, 453, 454, 455, 456, 660, 688], "rfc": [0, 4, 7, 660], "6555": [0, 660], "A": [0, 4, 6, 8, 12, 13, 17, 19, 20, 23, 25, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 61, 62, 63, 64, 65, 67, 68, 69, 71, 72, 73, 74, 75, 77, 78, 79, 81, 82, 83, 84, 85, 87, 88, 89, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 108, 109, 111, 112, 115, 116, 117, 118, 119, 120, 121, 122, 124, 125, 126, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 148, 149, 150, 151, 153, 154, 155, 156, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 185, 186, 187, 188, 189, 190, 191, 192, 195, 196, 198, 199, 200, 201, 202, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 382, 383, 385, 386, 387, 388, 389, 390, 391, 392, 393, 395, 396, 397, 398, 399, 400, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 464, 467, 470, 475, 476, 477, 479, 480, 481, 482, 483, 484, 487, 488, 490, 491, 492, 493, 494, 496, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 515, 516, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 536, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 566, 568, 569, 570, 571, 572, 575, 576, 577, 578, 579, 580, 581, 582, 583, 586, 588, 589, 590, 591, 592, 593, 594, 595, 597, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 678, 679, 680, 681, 682, 683, 684, 687, 688], "first": [0, 1, 3, 6, 8, 12, 19, 20, 23, 119, 131, 156, 160, 162, 205, 206, 208, 210, 234, 235, 236, 238, 241, 242, 276, 277, 279, 280, 283, 284, 285, 286, 288, 290, 291, 295, 296, 298, 303, 304, 312, 313, 315, 316, 319, 320, 328, 329, 332, 352, 353, 355, 357, 358, 363, 365, 368, 374, 375, 383, 386, 399, 453, 454, 455, 461, 497, 512, 513, 547, 548, 598, 611, 660, 687], "fail": [0, 1, 3, 5, 6, 9, 10, 12, 13, 19, 23, 26, 33, 38, 76, 91, 96, 119, 131, 132, 156, 210, 237, 239, 241, 260, 261, 262, 269, 273, 274, 276, 282, 283, 284, 298, 300, 311, 329, 337, 353, 368, 376, 385, 401, 460, 468, 473, 511, 514, 546, 548, 552, 598, 660, 681, 687, 688], "doe": [0, 4, 5, 13, 15, 18, 19, 24, 130, 148, 149, 150, 151, 156, 158, 160, 161, 163, 165, 167, 175, 177, 186, 187, 190, 198, 200, 205, 209, 210, 229, 241, 250, 262, 273, 275, 277, 279, 281, 282, 283, 284, 292, 296, 298, 299, 302, 303, 304, 312, 315, 331, 335, 345, 355, 357, 361, 364, 365, 367, 368, 374, 382, 386, 387, 396, 399, 400, 408, 409, 410, 421, 423, 434, 452, 453, 454, 455, 456, 460, 472, 478, 492, 501, 517, 527, 540, 546, 553, 570, 577, 591, 593, 594, 600, 613, 627, 660, 665, 680, 685, 688], "complet": [0, 8, 10, 13, 19, 21, 86, 93, 98, 260, 262, 271, 345, 346, 413, 414, 660], "within": [0, 8, 13, 19, 20, 261, 262, 263, 273, 353, 373, 450, 464, 467, 470, 483, 538, 545, 660], "250m": [0, 660], "tri": [0, 13, 279, 660], "parallel": [0, 6, 508, 512, 660], "whichev": [0, 660], "succe": [0, 6, 13, 26, 260, 373, 598, 660], "cancel": [0, 508, 512, 660], "other": [0, 4, 12, 13, 18, 19, 20, 23, 119, 125, 158, 226, 246, 247, 260, 265, 276, 285, 286, 299, 304, 310, 312, 313, 314, 332, 337, 354, 377, 383, 429, 461, 472, 486, 497, 512, 585, 598, 619, 650, 660, 673, 685, 687, 688], "success": [0, 3, 5, 131, 132, 135, 137, 139, 141, 149, 151, 160, 161, 162, 164, 165, 166, 173, 174, 176, 186, 187, 188, 189, 194, 198, 199, 201, 212, 220, 227, 234, 241, 242, 248, 260, 263, 264, 266, 273, 276, 279, 280, 288, 289, 290, 291, 295, 301, 310, 311, 312, 313, 315, 316, 317, 319, 320, 321, 325, 327, 328, 329, 330, 332, 350, 351, 357, 358, 360, 363, 374, 375, 376, 377, 383, 386, 395, 396, 397, 398, 399, 400, 401, 406, 422, 440, 441, 442, 446, 454, 455, 459, 490, 524, 549, 550, 551, 552, 556, 557, 558, 559, 561, 562, 566, 568, 569, 575, 577, 578, 579, 580, 588, 589, 590, 598, 639, 641, 660, 663, 666, 667, 669, 678, 679, 681, 682, 687], "result": [0, 1, 4, 6, 7, 10, 12, 32, 44, 54, 125, 155, 156, 160, 162, 164, 173, 174, 176, 186, 187, 188, 199, 200, 201, 203, 205, 209, 210, 216, 217, 220, 222, 227, 241, 242, 262, 275, 276, 277, 278, 279, 280, 285, 286, 290, 291, 299, 300, 301, 302, 303, 304, 305, 312, 313, 315, 316, 320, 325, 328, 329, 331, 332, 333, 341, 345, 349, 351, 352, 353, 355, 356, 357, 358, 364, 365, 374, 375, 382, 383, 397, 442, 452, 453, 454, 455, 456, 461, 485, 508, 512, 546, 547, 548, 556, 558, 598, 639, 641, 660, 687, 688], "cach": [0, 4, 154, 156, 660], "10": [0, 6, 8, 12, 19, 23, 239, 304, 485, 641, 660, 687], "minut": [0, 8, 20, 261, 273, 485, 538, 545, 660], "As": [0, 8, 22, 282, 284, 289, 300, 317, 401, 565, 660], "consequ": [0, 660], "mongod": [0, 1, 3, 4, 12, 23, 511, 535, 660], "onli": [0, 4, 5, 6, 7, 8, 9, 10, 19, 20, 27, 31, 33, 39, 40, 42, 43, 50, 53, 55, 62, 63, 64, 68, 75, 79, 84, 85, 88, 104, 105, 116, 120, 121, 125, 128, 129, 131, 136, 137, 138, 139, 140, 141, 144, 145, 147, 148, 149, 150, 151, 156, 163, 164, 180, 183, 185, 204, 207, 211, 213, 226, 227, 234, 235, 236, 238, 239, 244, 246, 247, 252, 254, 256, 261, 267, 272, 273, 274, 275, 277, 304, 327, 330, 331, 345, 346, 347, 350, 352, 353, 355, 365, 382, 395, 416, 441, 449, 451, 460, 485, 497, 503, 506, 509, 511, 512, 513, 538, 542, 545, 548, 551, 565, 578, 589, 590, 593, 602, 603, 604, 611, 623, 651, 652, 653, 654, 660, 662, 687, 688, 689], "listen": [0, 156, 275, 331, 382, 557, 660], "delai": [0, 660], "ar": [0, 1, 3, 4, 5, 6, 7, 8, 10, 12, 13, 15, 19, 20, 21, 22, 118, 119, 123, 124, 125, 126, 128, 129, 131, 134, 135, 136, 137, 138, 139, 140, 141, 144, 148, 149, 151, 156, 159, 160, 161, 162, 164, 179, 194, 195, 196, 206, 208, 209, 210, 212, 220, 227, 229, 232, 234, 238, 239, 241, 242, 243, 245, 246, 247, 248, 249, 255, 260, 261, 264, 266, 273, 275, 276, 277, 279, 280, 282, 283, 284, 285, 286, 288, 289, 290, 291, 295, 296, 297, 298, 299, 300, 301, 302, 304, 310, 311, 312, 313, 315, 316, 317, 319, 320, 321, 325, 326, 327, 328, 329, 330, 331, 332, 336, 337, 345, 346, 347, 348, 350, 351, 353, 354, 355, 356, 357, 358, 360, 363, 364, 367, 368, 373, 374, 375, 376, 377, 381, 382, 383, 384, 386, 416, 422, 424, 435, 440, 446, 453, 454, 455, 459, 460, 461, 462, 473, 474, 477, 485, 490, 508, 512, 513, 516, 538, 545, 546, 548, 553, 563, 577, 585, 593, 611, 648, 660, 662, 663, 673, 680, 682, 685, 686, 687, 688, 689], "aaaa": [0, 660], "associ": [0, 4, 144, 152, 163, 175, 226, 250, 254, 271, 275, 292, 296, 331, 335, 361, 382, 387, 421, 422, 423, 424, 425, 434, 448, 475, 492, 501, 527, 553, 570, 591, 613, 660, 665], "avoid": [0, 19, 20, 261, 273, 298, 538, 545, 571, 660], "match": [0, 1, 13, 19, 141, 149, 151, 199, 229, 277, 283, 289, 290, 291, 298, 300, 317, 318, 319, 320, 327, 328, 329, 337, 345, 397, 452, 453, 454, 455, 456, 459, 476, 478, 511, 512, 513, 514, 593, 611, 660, 687], "That": [0, 7, 460, 660], "On": [0, 4, 5, 18, 19, 131, 156, 164, 212, 223, 224, 225, 230, 231, 237, 269, 273, 337, 346, 347, 442, 524, 551, 660, 687], "system": [0, 3, 7, 19, 21, 119, 460, 461, 486, 552, 559, 560, 561, 585, 689], "pass": [0, 3, 4, 6, 9, 12, 13, 23, 26, 28, 41, 51, 61, 67, 72, 78, 82, 87, 103, 108, 111, 119, 123, 124, 131, 135, 137, 139, 141, 149, 151, 154, 156, 167, 177, 190, 194, 195, 200, 213, 234, 244, 260, 261, 262, 263, 264, 271, 277, 282, 284, 289, 290, 291, 293, 294, 304, 312, 313, 317, 318, 325, 328, 329, 346, 351, 362, 400, 408, 461, 490, 547, 573, 577, 580, 588, 598, 641, 648, 660, 663, 687, 688], "url": [0, 4], "encod": [0, 4, 124, 195, 445, 454, 459, 661], "path": [0, 4, 7, 11, 15, 19, 119, 573, 660, 688, 689], "which": [0, 3, 6, 7, 11, 12, 13, 18, 19, 23, 37, 48, 59, 115, 120, 121, 125, 131, 137, 138, 139, 140, 141, 145, 148, 149, 150, 151, 154, 156, 158, 159, 161, 163, 164, 194, 211, 212, 213, 227, 228, 229, 238, 239, 251, 256, 262, 270, 275, 277, 288, 304, 306, 311, 328, 329, 330, 331, 337, 344, 347, 350, 353, 355, 356, 369, 382, 396, 399, 409, 417, 418, 427, 428, 455, 456, 460, 461, 472, 483, 512, 523, 525, 529, 546, 547, 559, 598, 614, 615, 616, 617, 624, 625, 629, 634, 636, 660, 670, 680, 688, 689], "must": [0, 1, 4, 6, 7, 8, 11, 12, 13, 18, 20, 23, 25, 115, 120, 121, 124, 131, 143, 147, 148, 149, 150, 151, 158, 162, 165, 166, 168, 169, 173, 174, 176, 178, 185, 186, 187, 189, 191, 192, 194, 195, 198, 199, 201, 202, 204, 207, 212, 213, 218, 219, 226, 232, 234, 235, 236, 238, 239, 241, 242, 244, 249, 260, 261, 273, 275, 276, 277, 278, 280, 283, 285, 288, 290, 291, 299, 300, 301, 302, 303, 304, 305, 310, 312, 313, 315, 316, 320, 325, 328, 329, 330, 331, 332, 346, 347, 348, 355, 356, 358, 364, 365, 374, 375, 382, 383, 395, 410, 411, 416, 439, 453, 454, 455, 461, 472, 512, 515, 521, 529, 535, 538, 539, 544, 545, 577, 592, 596, 599, 605, 619, 660, 678, 679, 681, 682, 687, 688, 689], "suffix": [0, 411], "sock": [0, 549, 550, 552, 553, 554, 555, 556, 557, 559, 560, 561, 562, 641], "tmp": [0, 4, 23], "2ftmp": [0, 641], "2fmongodb": [0, 641], "usernam": [0, 4, 12, 23, 354, 377, 636, 655, 658, 660], "password": [0, 4, 7, 12, 23, 354, 619, 625, 650, 655, 658, 660], "so": [0, 4, 6, 7, 8, 12, 19, 132, 155, 237, 238, 262, 269, 270, 299, 319, 326, 461, 473, 512, 577, 619, 621, 622, 642, 643, 644, 645, 660, 687, 688], "user": [0, 4, 6, 12, 15, 19, 23, 123, 156, 164, 194, 227, 262, 263, 271, 277, 278, 284, 299, 302, 303, 304, 354, 355, 356, 364, 365, 376, 377, 395, 399, 401, 486, 495, 575, 619, 641, 650, 660, 677, 687, 688], "These": [0, 1, 6, 13, 384, 461, 473, 485, 513, 514, 610, 611, 660, 685, 687], "instruct": [0, 12, 19, 397, 687, 688, 689], "ssl": [0, 18, 158, 238, 270, 472, 564, 565], "run": [0, 4, 6, 10, 11, 19, 159, 160, 161, 162, 220, 241, 242, 262, 263, 271, 275, 276, 288, 325, 330, 331, 337, 355, 382, 383, 486, 508, 512, 523, 528, 531, 660, 687, 689], "local": [0, 4, 6, 7, 10, 11, 12, 19, 23, 124, 166, 171, 195, 241, 276, 284, 304, 310, 312, 313, 345, 416, 497, 506, 555, 687], "port": [0, 3, 12, 23, 171, 462, 529, 640, 660, 687], "tlsmode": [0, 4], "requiretl": [0, 4], "tlscertificatekeyfil": [0, 4, 7, 126, 196, 660], "pem": [0, 4, 7, 126, 196, 660], "tlscafil": [0, 4, 7, 126, 196, 660], "ca": [0, 1, 4], "add": [0, 3, 6, 11, 12, 13, 90, 99, 162, 165, 205, 210, 241, 242, 260, 261, 262, 276, 277, 280, 283, 284, 286, 288, 290, 291, 295, 296, 298, 303, 304, 312, 313, 315, 316, 319, 320, 328, 329, 332, 355, 358, 363, 365, 368, 374, 375, 383, 386, 395, 396, 397, 398, 399, 400, 401, 411, 499, 552, 598, 687, 689], "true": [0, 3, 4, 6, 7, 10, 11, 12, 23, 116, 117, 119, 135, 137, 139, 140, 141, 148, 149, 150, 151, 155, 156, 157, 160, 161, 162, 164, 165, 166, 173, 174, 176, 186, 187, 194, 198, 199, 220, 227, 234, 235, 236, 237, 239, 241, 242, 244, 245, 248, 249, 259, 260, 262, 263, 264, 265, 266, 269, 276, 277, 279, 280, 285, 288, 289, 290, 291, 295, 296, 299, 300, 301, 304, 310, 311, 312, 313, 315, 316, 317, 319, 320, 321, 325, 327, 328, 329, 330, 332, 336, 337, 345, 348, 350, 351, 354, 355, 357, 358, 363, 373, 374, 375, 376, 377, 383, 385, 386, 388, 395, 396, 397, 398, 399, 400, 401, 406, 407, 409, 415, 417, 418, 422, 424, 435, 440, 441, 446, 459, 461, 476, 481, 482, 490, 494, 496, 506, 508, 512, 524, 541, 543, 546, 548, 565, 581, 586, 593, 594, 619, 633, 635, 638, 641, 642, 643, 644, 645, 650, 651, 652, 653, 654, 660, 663, 666, 667, 669, 673, 674, 687, 688], "end": [0, 5, 7, 18, 156, 158, 250, 417, 418, 420, 442, 472, 578, 660, 687], "null": [0, 1, 3, 6, 9, 10, 11, 12, 13, 21, 23, 24, 37, 48, 59, 123, 130, 131, 135, 137, 139, 141, 149, 151, 153, 154, 156, 160, 161, 162, 163, 166, 167, 175, 177, 185, 188, 189, 190, 194, 199, 200, 201, 205, 207, 209, 210, 211, 212, 213, 218, 219, 220, 223, 224, 225, 230, 231, 232, 239, 240, 241, 242, 244, 245, 248, 249, 250, 252, 260, 261, 262, 263, 264, 273, 274, 275, 276, 277, 278, 279, 280, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 310, 311, 312, 313, 315, 316, 317, 318, 319, 320, 321, 325, 327, 328, 329, 330, 331, 332, 334, 335, 336, 337, 347, 353, 354, 355, 356, 357, 358, 360, 361, 362, 363, 364, 365, 367, 368, 373, 374, 375, 376, 377, 382, 383, 386, 387, 395, 396, 397, 398, 399, 400, 401, 407, 408, 409, 411, 412, 413, 414, 416, 417, 418, 420, 421, 422, 423, 424, 434, 435, 440, 453, 454, 455, 456, 459, 477, 478, 492, 493, 497, 501, 511, 517, 526, 527, 533, 540, 544, 546, 547, 548, 549, 553, 558, 566, 570, 572, 573, 576, 577, 591, 593, 595, 598, 600, 612, 613, 614, 615, 617, 618, 619, 624, 625, 626, 627, 628, 629, 630, 631, 636, 637, 639, 641, 648, 661, 665, 670, 673, 687, 688], "localhost": [0, 1, 3, 4, 6, 7, 12, 23, 119, 156, 329, 337, 381, 401, 416, 460, 511, 616, 619, 621, 622, 641, 648, 650, 660, 687, 688], "requir": [0, 4, 7, 11, 12, 19, 23, 32, 44, 54, 115, 137, 139, 141, 149, 151, 157, 162, 164, 171, 213, 227, 238, 241, 242, 262, 270, 275, 276, 277, 280, 283, 284, 286, 290, 291, 295, 296, 298, 300, 312, 313, 315, 316, 320, 328, 329, 331, 332, 349, 353, 355, 358, 363, 374, 375, 382, 383, 386, 411, 461, 486, 660, 687, 688, 689], "certif": [0, 17, 660], "default": [0, 4, 5, 6, 7, 13, 18, 19, 20, 21, 119, 124, 155, 171, 180, 195, 211, 212, 214, 215, 216, 217, 222, 229, 232, 260, 261, 262, 267, 268, 271, 272, 273, 274, 275, 278, 285, 299, 304, 307, 308, 309, 321, 322, 323, 324, 327, 331, 337, 353, 370, 371, 372, 378, 379, 380, 382, 397, 398, 411, 461, 463, 464, 466, 467, 469, 470, 494, 497, 498, 503, 512, 538, 541, 542, 543, 545, 546, 547, 548, 564, 578, 579, 585, 589, 590, 593, 598, 611, 620, 621, 622, 623, 632, 650, 660, 673, 674, 676, 685, 687], "unless": [0, 7, 12, 23, 131, 277, 322, 355, 378, 565], "tlsallowconnectionswithoutcertif": 0, "provid": [0, 1, 4, 5, 6, 7, 11, 12, 13, 15, 19, 21, 23, 118, 123, 124, 125, 126, 135, 141, 147, 149, 151, 161, 166, 170, 171, 194, 195, 196, 199, 204, 214, 215, 223, 224, 225, 230, 231, 260, 262, 263, 274, 275, 277, 288, 289, 290, 291, 295, 296, 312, 313, 317, 319, 320, 326, 328, 329, 331, 346, 353, 355, 360, 363, 381, 382, 416, 437, 449, 460, 462, 476, 477, 478, 486, 512, 514, 523, 550, 552, 563, 572, 583, 585, 614, 615, 616, 617, 624, 626, 629, 636, 637, 640, 660, 687, 689], "present": [0, 4, 7, 19, 632, 638], "referenc": [0, 19, 421], "through": [0, 4, 7, 12, 15, 19, 120, 121, 237, 238, 270, 271, 284, 301, 352, 354, 357, 398, 474, 687], "constant": [0, 7, 12, 146, 277, 286, 290, 291, 320, 328, 329, 355, 386, 610, 660], "mongoc_uri_tlscertificatekeyfil": [0, 7, 126, 196, 660], "mongoc_uri_set_option_as_utf8": [0, 7, 14, 660], "mongoc_client_new_from_uri": [0, 1, 3, 6, 7, 9, 10, 12, 14, 20, 23, 156, 223, 241, 260, 261, 262, 274, 276, 300, 329, 353, 401, 460, 598, 648, 687], "issu": [0, 4, 5, 7, 243, 660, 687], "trust": [0, 7, 660], "author": [0, 5, 7, 376, 377, 399, 400, 401, 660], "nativ": [0, 4, 17], "store": [0, 4, 7, 156, 161, 220, 283, 288, 298, 325, 357, 461, 483, 556, 687, 688], "omit": [0, 155, 242, 276, 277, 304, 316, 332, 375, 383, 565], "variou": [0, 21, 162, 241, 242, 276, 277, 280, 285, 286, 304, 315, 316, 332, 355, 358, 374, 375, 383, 438, 474, 563, 662], "relat": [0, 3, 13, 18, 194, 460, 490, 663], "3": [0, 1, 3, 4, 6, 11, 12, 19, 21, 23, 137, 139, 141, 149, 151, 162, 241, 242, 276, 277, 280, 283, 284, 290, 291, 295, 296, 298, 299, 300, 304, 315, 316, 320, 328, 329, 332, 352, 355, 358, 363, 374, 375, 383, 395, 401, 405, 411, 416, 460, 468, 485, 497, 498, 511, 512, 514, 610, 660, 687], "4": [0, 3, 4, 6, 9, 12, 13, 19, 21, 23, 35, 46, 57, 144, 156, 241, 242, 275, 276, 277, 283, 286, 290, 291, 298, 304, 312, 313, 316, 320, 328, 329, 331, 332, 355, 375, 382, 383, 386, 416, 460, 462, 468, 485, 497, 508, 512, 565, 610, 660, 688], "ad": [0, 10, 11, 19, 144, 146, 147, 310, 312, 313, 354, 395, 396, 397, 398, 399, 400, 416, 689], "snappi": [0, 616, 648, 660], "support": [0, 4, 5, 6, 9, 13, 15, 17, 22, 124, 126, 137, 139, 141, 144, 149, 151, 164, 183, 195, 196, 227, 273, 275, 277, 278, 290, 291, 304, 320, 328, 329, 330, 331, 355, 382, 386, 398, 401, 410, 460, 478, 512, 660, 688], "zlib": [0, 616, 648, 660], "6": [0, 19, 23, 173, 176, 283, 397, 401, 416, 485, 497, 565, 660, 686, 687], "zstd": [0, 616, 648, 660], "2": [0, 1, 3, 6, 9, 10, 11, 12, 13, 18, 19, 22, 23, 35, 46, 57, 137, 139, 141, 149, 151, 156, 162, 239, 241, 242, 260, 261, 262, 274, 276, 277, 280, 283, 284, 290, 291, 295, 296, 298, 299, 300, 304, 315, 316, 320, 328, 329, 332, 337, 352, 353, 355, 358, 363, 374, 375, 383, 386, 395, 398, 401, 405, 411, 416, 442, 460, 475, 476, 477, 478, 485, 497, 498, 511, 514, 546, 565, 598, 610, 660, 687, 688], "compressor": [0, 616, 648, 660], "prioriti": [0, 162, 241, 242, 276, 277, 280, 304, 315, 316, 332, 355, 358, 374, 375, 383], "order": [0, 1, 3, 4, 20, 131, 137, 139, 141, 149, 151, 162, 241, 242, 276, 277, 280, 283, 284, 285, 286, 290, 291, 295, 296, 298, 299, 300, 304, 312, 315, 316, 320, 328, 329, 332, 355, 358, 363, 374, 375, 383, 399, 455, 456, 474, 512, 546, 687], "want": [0, 5, 12, 211, 239, 281, 289, 317, 359, 485, 662, 687, 689], "messag": [0, 1, 3, 6, 9, 10, 12, 13, 21, 23, 34, 45, 56, 144, 156, 164, 210, 215, 219, 227, 236, 239, 241, 260, 261, 262, 274, 275, 276, 277, 279, 282, 283, 284, 286, 290, 291, 296, 298, 299, 300, 304, 312, 313, 320, 328, 329, 331, 337, 353, 355, 368, 382, 386, 395, 396, 397, 398, 399, 400, 401, 416, 420, 460, 511, 546, 548, 598, 660, 687, 688], "share": [0, 5, 8, 19, 660, 687, 688], "common": [0, 7, 12, 14, 16, 17, 353, 687], "note": [0, 1, 4, 6, 7, 12, 18, 19, 21, 158, 176, 235, 346, 352, 355, 398, 400, 401, 420, 472, 512, 577, 627], "might": [0, 4, 12, 13, 194, 345], "same": [0, 1, 4, 13, 19, 22, 132, 143, 154, 194, 204, 238, 275, 282, 284, 331, 347, 382, 400, 416, 460, 486, 512, 548, 551, 660, 681, 683, 684, 688], "send": [0, 6, 13, 23, 76, 96, 125, 162, 171, 241, 242, 243, 276, 277, 280, 315, 316, 332, 355, 358, 374, 375, 383, 461, 560, 561, 660, 688], "possibl": [0, 5, 6, 7, 10, 15, 19, 154, 279, 352, 398, 415, 685, 688], "still": [0, 213, 288, 395, 401, 512, 621, 622, 660, 686], "repli": [0, 3, 5, 6, 9, 12, 13, 23, 33, 55, 85, 131, 153, 156, 160, 161, 162, 174, 220, 241, 242, 249, 260, 261, 262, 263, 276, 277, 278, 279, 280, 283, 288, 290, 291, 298, 299, 300, 301, 302, 303, 304, 312, 313, 315, 316, 320, 325, 328, 329, 330, 332, 337, 346, 347, 355, 356, 357, 358, 365, 374, 375, 383, 385, 386, 395, 396, 397, 398, 399, 400, 401, 485, 514, 546, 598, 687, 688], "depend": [0, 3, 17, 19, 20, 486, 660, 688, 689], "how": [0, 1, 5, 6, 10, 12, 13, 19, 23, 236, 241, 260, 266, 276, 283, 298, 299, 473, 485, 498, 512, 660, 681, 687, 688, 689], "wa": [0, 1, 6, 8, 10, 13, 19, 20, 33, 90, 99, 131, 153, 155, 185, 194, 201, 207, 213, 232, 235, 236, 237, 238, 242, 245, 249, 251, 256, 259, 260, 262, 269, 270, 296, 298, 316, 337, 348, 353, 354, 375, 388, 389, 401, 402, 403, 404, 481, 483, 484, 496, 514, 518, 519, 532, 554, 559, 565, 610, 614, 629, 633, 635, 638, 676, 688], "built": [0, 5, 13, 15, 19, 164, 227, 273, 585, 660], "unknown": [0, 3, 13, 337, 353, 460, 536, 597], "compil": [0, 4, 5, 7, 10, 12, 19, 21, 23, 238, 270, 402, 403, 404, 461, 476, 662, 687], "valu": [0, 1, 4, 7, 12, 21, 118, 125, 132, 154, 162, 165, 173, 176, 179, 180, 183, 186, 194, 198, 205, 210, 232, 237, 241, 242, 262, 269, 275, 276, 277, 280, 283, 284, 295, 296, 298, 303, 304, 315, 316, 319, 331, 332, 342, 343, 355, 358, 363, 365, 368, 374, 375, 382, 383, 386, 391, 395, 396, 397, 399, 400, 401, 402, 403, 404, 417, 418, 460, 461, 462, 464, 467, 468, 470, 479, 480, 481, 482, 483, 484, 508, 512, 518, 519, 525, 544, 546, 562, 565, 577, 579, 590, 620, 621, 622, 623, 632, 646, 647, 648, 649, 651, 652, 653, 654, 660, 668, 671, 672, 680, 681, 683, 684, 685, 687, 688], "ignor": [0, 7, 242, 245, 282, 283, 284, 296, 298, 304, 316, 375, 395, 468, 512, 565, 577, 593, 660, 685], "build": [0, 1, 4, 7, 9, 11, 17, 23, 145, 213, 241, 244, 276, 277, 300, 346, 347, 350, 355, 468, 660, 688, 689], "cmake": [0, 4, 5, 7, 18, 19, 688, 689], "12": [0, 687], "higher": [0, 17, 213, 244, 346, 347], "full": [0, 330, 409, 478, 485, 660], "found": [0, 5, 12, 13, 156, 244, 296, 304, 310, 313, 337, 365, 453, 454, 455, 514, 687], "doc": [0, 1, 3, 6, 10, 12, 19, 23, 156, 260, 261, 262, 274, 299, 304, 337, 353, 365, 416, 511, 546, 598, 687], "descript": [0, 7, 19, 63, 64, 104, 105, 126, 196, 219, 225, 231, 268, 379, 497, 535, 537, 592], "so_keepal": 0, "tcp": [0, 271], "keep": [0, 5, 19, 229, 552, 688], "aliv": 0, "tcp_keepidl": 0, "long": [0, 235, 386, 398, 401, 660, 681], "need": [0, 4, 6, 8, 19, 20, 123, 155, 194, 206, 208, 262, 275, 299, 331, 382, 443, 444, 445, 447, 448, 565, 581, 660, 681, 687], "remain": [0, 1, 10, 234, 238, 264, 265, 270, 271, 386, 396, 399, 400, 461, 483, 565, 577, 619], "idl": [0, 20, 229, 261, 273, 485, 538, 545], "befor": [0, 4, 6, 18, 19, 20, 21, 90, 99, 145, 155, 158, 165, 198, 234, 235, 236, 238, 241, 242, 261, 262, 270, 273, 275, 276, 277, 283, 284, 292, 298, 299, 300, 304, 316, 318, 319, 331, 332, 345, 350, 351, 375, 382, 383, 416, 460, 461, 464, 467, 470, 472, 473, 490, 538, 545, 565, 578, 589, 590, 617, 660, 663, 666, 667, 669, 671, 672, 678, 679, 681, 683, 684, 687, 689], "start": [0, 3, 4, 6, 7, 11, 12, 13, 17, 19, 20, 49, 80, 92, 148, 149, 150, 151, 154, 241, 259, 260, 261, 262, 263, 273, 275, 276, 331, 355, 382, 442, 538, 542, 544, 545, 546, 547, 548, 598, 610], "keepal": 0, "probe": 0, "120": [0, 262, 411], "second": [0, 1, 3, 6, 8, 19, 23, 156, 260, 262, 512, 598, 660], "tcp_keepintvl": 0, "time": [0, 3, 6, 8, 10, 13, 19, 20, 156, 234, 246, 247, 261, 262, 264, 271, 273, 274, 275, 304, 331, 352, 382, 398, 449, 473, 485, 512, 532, 534, 538, 545, 548, 559, 560, 561, 601, 606, 660, 687], "tcp_keepcnt": 0, "mani": [0, 13, 283, 298], "without": [0, 5, 7, 12, 19, 23, 117, 119, 156, 162, 241, 242, 243, 262, 276, 280, 308, 315, 316, 332, 354, 358, 374, 375, 383, 460, 660, 688], "acknowledg": [0, 272, 285, 324, 380, 660, 673, 685], "drop": [0, 1, 3, 18, 276, 295, 296, 318, 319, 332, 345, 363, 383, 422], "9": [0, 4, 19, 298, 496, 678, 679, 680, 681, 682, 683, 684, 687], "tcp_nodelai": 0, "packet": [0, 5, 21, 485], "soon": [0, 8], "buffer": [0, 6, 271, 345, 487, 488, 559, 560, 561, 566, 567, 569, 571, 575, 578, 585, 588, 589, 623], "small": 0, "nagl": 0, "algorithm": [0, 125, 179, 180, 183, 688], "option": [1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689], "document": [1, 3, 4, 10, 12, 13, 17, 20, 33, 118, 124, 126, 128, 129, 131, 134, 135, 136, 137, 138, 139, 140, 141, 142, 146, 148, 149, 150, 151, 153, 155, 156, 160, 162, 165, 166, 171, 174, 186, 187, 188, 194, 195, 196, 198, 199, 205, 206, 208, 210, 214, 241, 242, 245, 248, 249, 250, 252, 254, 259, 260, 261, 262, 273, 275, 276, 277, 278, 279, 280, 282, 283, 284, 286, 288, 289, 290, 291, 295, 296, 298, 299, 300, 301, 302, 303, 304, 310, 311, 312, 313, 315, 316, 317, 319, 320, 321, 327, 328, 329, 330, 331, 332, 334, 337, 338, 345, 346, 347, 348, 349, 351, 352, 353, 355, 356, 357, 358, 360, 363, 364, 365, 368, 374, 375, 382, 383, 386, 389, 392, 393, 395, 397, 399, 400, 401, 410, 411, 413, 414, 416, 417, 418, 432, 461, 468, 473, 476, 478, 490, 502, 508, 512, 513, 514, 528, 531, 538, 545, 548, 598, 605, 611, 616, 624, 627, 660, 663, 688], "number": [1, 5, 6, 12, 32, 34, 44, 45, 54, 56, 132, 145, 146, 169, 171, 228, 229, 232, 275, 277, 278, 282, 283, 284, 286, 290, 291, 298, 299, 311, 320, 328, 329, 331, 338, 339, 341, 349, 350, 351, 353, 355, 356, 382, 386, 439, 451, 486, 487, 488, 489, 513, 525, 537, 559, 560, 561, 578, 579, 585, 589, 590, 660, 687], "practic": [1, 7, 12, 460, 688], "displai": [1, 19], "capabl": [1, 514], "publicli": 1, "avail": [1, 3, 4, 5, 6, 7, 13, 18, 19, 35, 46, 57, 119, 154, 155, 228, 240, 284, 305, 395, 416, 497, 511, 512, 561, 593, 594, 648, 660, 687], "all": [1, 3, 4, 5, 6, 7, 8, 10, 12, 18, 19, 20, 21, 32, 44, 54, 131, 135, 141, 142, 144, 146, 147, 149, 151, 156, 158, 163, 164, 175, 188, 199, 205, 210, 219, 226, 227, 229, 232, 238, 250, 260, 264, 270, 277, 278, 285, 286, 290, 291, 296, 298, 299, 303, 304, 311, 312, 313, 320, 328, 329, 335, 341, 349, 351, 352, 355, 356, 360, 361, 365, 367, 368, 376, 387, 399, 401, 410, 416, 422, 452, 456, 459, 460, 472, 475, 485, 492, 501, 511, 512, 513, 527, 553, 565, 569, 570, 575, 588, 591, 592, 613, 624, 643, 650, 660, 665, 687, 688, 689], "zipcod": 1, "unit": 1, "json": [1, 11, 125, 156, 241, 276, 300, 619, 688], "let": [1, 10, 146, 277, 286, 290, 291, 304, 320, 328, 329, 355, 386], "": [1, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 19, 20, 21, 23, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 39, 40, 41, 42, 43, 44, 45, 47, 48, 50, 51, 52, 53, 54, 55, 56, 58, 59, 61, 62, 63, 64, 65, 67, 68, 69, 72, 73, 74, 75, 78, 79, 82, 83, 84, 85, 87, 88, 89, 103, 104, 105, 106, 108, 109, 111, 112, 119, 153, 156, 157, 159, 160, 161, 162, 171, 199, 205, 210, 219, 234, 239, 241, 242, 246, 247, 252, 255, 260, 261, 262, 264, 271, 274, 276, 279, 280, 282, 283, 284, 285, 288, 295, 296, 298, 299, 300, 301, 302, 303, 304, 310, 312, 313, 315, 316, 319, 329, 330, 332, 337, 338, 346, 347, 350, 353, 356, 357, 358, 360, 363, 364, 365, 368, 374, 375, 383, 386, 395, 396, 397, 398, 399, 400, 401, 405, 410, 416, 437, 442, 460, 478, 511, 512, 523, 525, 529, 530, 532, 534, 546, 548, 551, 578, 589, 590, 593, 594, 596, 598, 606, 607, 608, 609, 618, 619, 623, 630, 631, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 676, 685, 687, 688, 689], "check": [1, 2, 4, 5, 7, 8, 10, 14, 17, 19, 76, 80, 86, 96, 97, 98, 153, 159, 160, 161, 205, 259, 277, 278, 279, 296, 299, 302, 303, 304, 336, 337, 346, 347, 355, 356, 357, 365, 373, 424, 476, 486, 506, 512, 554, 660, 685, 687], "everyth": [1, 6], "instal": [1, 4, 5, 7, 11, 14, 17, 689], "command": [1, 4, 9, 11, 13, 17, 19, 26, 27, 32, 33, 35, 38, 39, 40, 44, 46, 49, 50, 54, 57, 60, 76, 80, 86, 96, 97, 98, 117, 120, 121, 135, 137, 139, 141, 144, 149, 151, 156, 159, 160, 161, 162, 188, 205, 210, 220, 241, 242, 243, 248, 262, 275, 276, 277, 278, 279, 280, 283, 284, 285, 286, 288, 290, 291, 295, 296, 298, 300, 302, 303, 305, 312, 313, 315, 316, 319, 320, 325, 326, 328, 329, 330, 331, 332, 346, 347, 352, 355, 356, 357, 358, 360, 363, 364, 365, 368, 374, 375, 376, 377, 382, 383, 386, 394, 401, 411, 413, 414, 417, 418, 460, 490, 513, 516, 522, 523, 528, 531, 534, 660, 663, 685, 688], "load": [1, 7, 11, 13, 37, 48, 59, 119, 185, 207, 213, 660, 688], "mongoimport": 1, "d": [1, 3, 5, 22, 156, 386, 395, 396, 397, 398, 399, 400, 401, 473, 485, 513, 514, 611, 621], "test": [1, 3, 6, 9, 10, 12, 13, 19, 22, 23, 241, 261, 274, 276, 300, 353, 381, 385, 416, 460, 468, 546, 548, 660, 673, 675, 676, 687, 688], "mongodb": [1, 3, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 21, 22, 23, 26, 37, 38, 48, 49, 59, 60, 91, 92, 93, 119, 137, 139, 141, 144, 149, 150, 151, 156, 158, 162, 164, 204, 205, 206, 208, 209, 210, 211, 213, 219, 223, 227, 238, 239, 241, 242, 260, 261, 262, 267, 268, 270, 272, 274, 275, 276, 277, 280, 281, 282, 283, 284, 286, 288, 290, 291, 295, 296, 298, 299, 300, 303, 304, 312, 313, 315, 316, 319, 320, 323, 324, 326, 328, 329, 330, 331, 332, 333, 337, 338, 340, 346, 347, 349, 352, 353, 355, 358, 360, 363, 365, 368, 373, 374, 375, 379, 380, 381, 382, 383, 386, 395, 401, 411, 416, 420, 439, 440, 441, 449, 459, 460, 462, 468, 472, 473, 478, 485, 486, 494, 497, 498, 508, 510, 511, 512, 513, 523, 525, 528, 531, 546, 548, 565, 577, 593, 594, 596, 598, 611, 616, 618, 619, 621, 622, 630, 631, 632, 638, 641, 642, 643, 644, 645, 648, 650, 656, 657, 659, 660, 662, 674, 682, 685, 686, 688, 689], "shell": [1, 10, 19, 23, 687], "verifi": [1, 7, 687], "import": [1, 7, 11, 19, 21, 687], "successfulli": [1, 19, 60, 213, 237, 262, 265, 269, 296, 337, 354, 395, 396, 397, 398, 399, 400, 461, 468, 651, 652, 653, 654, 660, 687], "connect": [1, 3, 4, 7, 9, 12, 13, 14, 16, 17, 19, 22, 23, 35, 37, 46, 48, 57, 59, 66, 94, 100, 107, 119, 211, 213, 214, 215, 219, 223, 228, 238, 239, 265, 270, 274, 275, 323, 331, 337, 353, 379, 382, 460, 461, 497, 512, 523, 525, 528, 531, 535, 552, 565, 593, 594, 596, 621, 641, 649, 685, 688, 689], "db": [1, 6, 9, 10, 22, 122, 125, 156, 193, 206, 211, 212, 219, 241, 275, 276, 296, 329, 337, 346, 347, 382, 411, 416, 660, 687], "count": [1, 6, 8, 12, 131, 241, 282, 284, 298, 315, 374, 578, 589], "29467": 1, "findon": 1, "_id": [1, 3, 6, 10, 12, 13, 22, 156, 182, 260, 261, 262, 275, 284, 304, 310, 312, 313, 321, 329, 331, 382, 395, 396, 397, 399, 400, 401, 429, 546, 598, 687], "35004": 1, "acmar": 1, "loc": 1, "86": 1, "51557": 1, "33": 1, "584132": 1, "pop": [1, 270], "6055": 1, "al": 1, "each": [1, 5, 6, 8, 12, 20, 124, 146, 156, 162, 195, 205, 213, 234, 241, 242, 262, 264, 275, 276, 277, 278, 280, 286, 290, 291, 302, 303, 315, 316, 320, 328, 329, 331, 332, 349, 355, 358, 364, 365, 374, 375, 382, 383, 386, 396, 436, 486, 503, 509, 512, 528, 531, 546, 547, 548, 598, 660, 687, 689], "collect": [1, 3, 6, 9, 10, 12, 13, 22, 23, 118, 120, 121, 122, 125, 131, 156, 164, 166, 174, 186, 187, 188, 193, 199, 206, 208, 212, 227, 242, 260, 261, 262, 267, 272, 274, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 337, 345, 346, 347, 353, 355, 360, 363, 364, 365, 366, 367, 368, 373, 375, 378, 379, 380, 386, 395, 396, 397, 398, 399, 400, 401, 410, 411, 461, 468, 497, 511, 512, 546, 548, 598, 685, 687, 688], "form": [1, 12, 13, 23, 126, 196], "In": [1, 4, 6, 7, 8, 12, 13, 19, 23, 156, 162, 241, 242, 262, 276, 277, 280, 283, 284, 296, 298, 302, 303, 304, 315, 316, 332, 355, 358, 364, 365, 374, 375, 383, 437, 460, 486, 512, 653, 660, 673], "field": [1, 6, 7, 9, 12, 13, 14, 16, 17, 114, 115, 116, 117, 118, 119, 120, 121, 122, 124, 125, 126, 127, 140, 141, 148, 149, 150, 151, 156, 159, 162, 164, 192, 193, 195, 196, 198, 199, 204, 205, 210, 227, 241, 242, 275, 276, 277, 278, 280, 283, 284, 290, 291, 295, 296, 298, 299, 300, 303, 304, 312, 313, 315, 316, 319, 320, 321, 328, 329, 331, 332, 337, 355, 356, 358, 360, 363, 365, 368, 373, 374, 375, 382, 383, 386, 389, 401, 455, 456, 461, 464, 467, 470, 547, 598, 687], "hold": [1, 11, 25, 239, 521, 535, 660, 687], "two": [1, 3, 6, 8, 11, 15, 19, 23, 241, 260, 276, 512, 598, 688, 689], "letter": 1, "abbrevi": 1, "locat": [1, 19, 119, 131, 135, 137, 139, 153, 155, 160, 161, 162, 171, 209, 210, 212, 213, 220, 225, 231, 241, 242, 244, 245, 248, 249, 260, 262, 263, 276, 279, 280, 282, 283, 284, 287, 288, 289, 290, 291, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 310, 311, 312, 313, 315, 316, 317, 318, 319, 320, 321, 325, 327, 328, 329, 330, 332, 336, 337, 348, 354, 357, 358, 360, 362, 363, 364, 367, 368, 373, 374, 375, 376, 377, 383, 422, 424, 435, 440, 453, 454, 455, 459, 468, 477, 641], "latitud": 1, "longitud": 1, "arrai": [1, 6, 12, 13, 22, 119, 149, 151, 169, 185, 207, 219, 277, 290, 291, 310, 311, 312, 313, 320, 327, 328, 329, 355, 367, 368, 439, 451, 537, 592, 687], "get": [1, 12, 19, 131, 186, 187, 188, 201, 206, 208, 211, 218, 252, 254, 255, 256, 257, 262, 365, 485, 528, 530, 531, 532, 534, 555, 671, 672, 687, 688], "greater": [1, 12, 157, 246, 247, 660], "pipelin": [1, 6, 156, 275, 277, 327, 328, 329, 331, 346, 347, 355, 382, 548], "aggregation1": 1, "stdio": [1, 3, 6, 9, 10, 12, 23, 239, 241, 260, 261, 262, 274, 276, 279, 282, 283, 284, 298, 299, 300, 304, 353, 416, 460, 478, 598, 687, 688], "static": [1, 3, 6, 10, 11, 156, 239, 277, 279, 282, 283, 284, 298, 299, 304, 355, 511, 619, 662, 687, 688], "void": [1, 3, 6, 10, 12, 21, 23, 24, 25, 28, 30, 41, 51, 61, 65, 67, 69, 72, 74, 78, 82, 87, 89, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 106, 108, 109, 111, 112, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 128, 129, 130, 134, 136, 138, 140, 142, 143, 144, 145, 146, 148, 150, 152, 156, 158, 163, 167, 168, 169, 170, 171, 175, 177, 178, 179, 180, 181, 182, 183, 190, 191, 192, 193, 194, 195, 196, 200, 202, 219, 226, 228, 229, 233, 234, 238, 239, 243, 246, 247, 250, 255, 262, 263, 264, 267, 268, 270, 271, 272, 274, 279, 282, 283, 284, 292, 298, 299, 300, 304, 322, 323, 324, 329, 335, 337, 340, 349, 352, 361, 378, 379, 380, 386, 387, 389, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 408, 421, 423, 434, 443, 444, 445, 447, 448, 460, 462, 463, 464, 466, 467, 468, 469, 470, 471, 472, 475, 479, 480, 482, 486, 487, 488, 489, 492, 495, 499, 501, 508, 509, 510, 511, 516, 517, 522, 527, 537, 540, 545, 546, 547, 548, 553, 559, 560, 562, 564, 565, 570, 578, 580, 589, 591, 600, 605, 606, 607, 608, 609, 613, 656, 657, 659, 662, 665, 677, 678, 679, 680, 681, 682, 683, 684, 687, 688], "print_pipelin": 1, "mongoc_collection_t": [1, 2, 3, 6, 10, 12, 14, 17, 20, 23, 156, 206, 260, 261, 262, 274, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 327, 328, 329, 330, 331, 332, 337, 353, 360, 366, 381, 386, 395, 396, 397, 398, 399, 400, 401, 457, 458, 511, 546, 548, 598, 687, 688], "mongoc_cursor_t": [1, 2, 10, 12, 14, 17, 20, 159, 188, 205, 261, 273, 274, 277, 278, 292, 299, 302, 303, 304, 329, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 355, 356, 364, 365, 410, 416, 437, 511, 538, 545, 687], "cursor": [1, 5, 12, 13, 14, 16, 17, 155, 159, 160, 205, 243, 261, 274, 275, 277, 278, 299, 302, 303, 304, 329, 331, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 355, 356, 364, 365, 382, 398, 416, 485, 511, 514, 548, 687], "bson_error_t": [1, 3, 6, 9, 10, 12, 13, 23, 30, 74, 131, 135, 137, 139, 141, 149, 151, 153, 156, 160, 161, 162, 164, 165, 166, 173, 174, 176, 186, 187, 188, 189, 194, 198, 199, 209, 210, 212, 213, 219, 220, 225, 227, 231, 237, 239, 241, 242, 244, 245, 248, 249, 260, 261, 262, 263, 269, 273, 274, 276, 277, 278, 279, 280, 282, 283, 284, 287, 288, 289, 290, 291, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 310, 311, 312, 313, 315, 316, 317, 318, 319, 320, 321, 325, 327, 328, 329, 330, 332, 336, 337, 353, 354, 355, 356, 357, 358, 360, 362, 363, 364, 365, 367, 368, 373, 374, 375, 376, 377, 383, 386, 395, 396, 397, 398, 399, 400, 401, 407, 409, 411, 412, 413, 414, 415, 416, 417, 418, 422, 424, 435, 440, 446, 453, 454, 455, 459, 460, 468, 477, 511, 546, 598, 641, 687, 688], "error": [1, 2, 3, 4, 5, 6, 7, 9, 10, 12, 14, 17, 19, 21, 23, 30, 33, 74, 125, 143, 153, 155, 156, 159, 161, 164, 165, 166, 173, 174, 176, 180, 183, 186, 187, 188, 189, 194, 198, 199, 213, 219, 223, 224, 225, 227, 230, 231, 234, 235, 236, 237, 239, 244, 245, 248, 249, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 272, 274, 275, 277, 278, 287, 293, 294, 299, 304, 314, 318, 331, 333, 334, 346, 347, 348, 350, 353, 355, 356, 362, 382, 385, 386, 395, 396, 397, 398, 399, 400, 401, 406, 407, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 420, 439, 441, 446, 451, 452, 456, 460, 461, 468, 485, 486, 490, 511, 514, 516, 523, 546, 548, 554, 581, 586, 598, 639, 641, 660, 663, 685, 687, 688], "const": [1, 3, 6, 9, 10, 12, 21, 23, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 61, 62, 63, 64, 65, 67, 68, 69, 71, 72, 73, 74, 75, 77, 78, 79, 81, 82, 83, 84, 85, 87, 88, 89, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 108, 109, 111, 112, 118, 119, 122, 124, 125, 126, 128, 129, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 144, 145, 146, 148, 149, 150, 151, 153, 154, 155, 156, 159, 160, 161, 162, 165, 166, 170, 171, 173, 174, 176, 179, 181, 182, 183, 185, 186, 187, 193, 194, 195, 196, 198, 199, 201, 205, 206, 207, 208, 210, 212, 216, 217, 219, 221, 222, 223, 224, 225, 230, 231, 235, 237, 238, 239, 241, 242, 244, 246, 248, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 265, 267, 268, 269, 270, 272, 274, 275, 276, 277, 278, 279, 280, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 294, 295, 297, 298, 299, 300, 301, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 327, 328, 329, 330, 331, 332, 333, 334, 337, 338, 339, 341, 344, 347, 348, 353, 354, 355, 356, 357, 358, 360, 363, 364, 365, 366, 368, 369, 370, 371, 372, 373, 374, 375, 377, 378, 379, 380, 382, 383, 385, 386, 388, 389, 390, 391, 392, 393, 396, 397, 399, 400, 401, 405, 407, 409, 410, 411, 412, 413, 414, 416, 417, 418, 425, 427, 428, 429, 431, 432, 438, 443, 444, 445, 446, 447, 448, 451, 452, 453, 454, 455, 456, 459, 460, 461, 463, 466, 468, 469, 471, 476, 477, 478, 479, 481, 484, 486, 487, 488, 491, 493, 496, 499, 500, 502, 503, 504, 505, 506, 508, 511, 515, 518, 519, 520, 524, 526, 528, 529, 530, 531, 532, 533, 534, 536, 539, 541, 542, 543, 544, 547, 550, 552, 560, 562, 564, 565, 573, 592, 593, 594, 595, 597, 598, 599, 601, 602, 603, 604, 607, 608, 609, 612, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 661, 664, 666, 667, 668, 669, 670, 671, 672, 673, 675, 676, 682, 687, 688], "bson_t": [1, 3, 6, 9, 10, 11, 12, 13, 23, 33, 39, 55, 85, 118, 119, 124, 125, 126, 128, 129, 131, 134, 135, 136, 137, 138, 139, 140, 141, 146, 148, 149, 150, 151, 153, 154, 155, 156, 159, 160, 161, 162, 165, 171, 174, 186, 187, 194, 195, 196, 198, 199, 201, 205, 210, 213, 219, 220, 239, 241, 242, 246, 248, 249, 252, 254, 260, 261, 262, 263, 274, 275, 276, 277, 278, 279, 280, 282, 283, 284, 286, 287, 288, 289, 290, 291, 293, 294, 295, 296, 297, 298, 299, 300, 301, 303, 304, 305, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 325, 327, 328, 329, 330, 331, 332, 334, 337, 346, 347, 348, 353, 354, 355, 356, 357, 358, 360, 362, 363, 364, 365, 368, 374, 375, 382, 383, 385, 386, 389, 392, 393, 395, 396, 397, 398, 399, 400, 401, 410, 411, 413, 414, 416, 417, 418, 425, 432, 438, 443, 448, 452, 453, 455, 456, 460, 468, 476, 477, 478, 490, 499, 502, 505, 508, 511, 528, 531, 546, 548, 598, 616, 619, 624, 627, 646, 647, 650, 651, 652, 653, 654, 663, 687, 688], "str": [1, 6, 10, 12, 23, 261, 262, 274, 279, 299, 300, 304, 337, 353, 386, 395, 396, 397, 398, 399, 400, 401, 416, 444, 445, 447, 478, 511, 687, 688], "bcon_new": [1, 3, 6, 9, 12, 23, 156, 219, 241, 260, 261, 262, 276, 277, 279, 283, 284, 298, 299, 300, 304, 329, 337, 355, 386, 395, 396, 397, 398, 399, 400, 401, 478, 511, 546, 598, 687, 688], "group": [1, 356], "total_pop": 1, "sum": [1, 12], "gte": [1, 6, 22, 478], "bcon_int32": [1, 3, 6, 23, 156, 219, 260, 261, 262, 299, 300, 304, 329, 386, 395, 396, 398, 401, 546, 598, 687, 688], "10000000": 1, "mongoc_collection_aggreg": [1, 14, 326, 346, 347, 548], "mongoc_query_non": [1, 12, 277, 282, 284, 299, 485, 548, 687], "while": [1, 8, 10, 12, 13, 19, 135, 137, 139, 141, 149, 151, 156, 194, 239, 260, 261, 263, 274, 299, 304, 336, 337, 353, 365, 416, 435, 437, 441, 451, 460, 478, 486, 511, 512, 598, 660, 687], "mongoc_cursor_next": [1, 10, 12, 13, 14, 155, 159, 261, 274, 277, 278, 299, 302, 303, 304, 329, 333, 337, 345, 351, 352, 353, 355, 356, 364, 365, 416, 511, 687], "bson_as_canonical_extended_json": [1, 3, 6, 10, 12, 23, 156, 241, 274, 276, 279, 299, 300, 304, 353, 386, 395, 396, 397, 398, 399, 400, 401, 416, 478, 511, 619, 687, 688], "printf": [1, 3, 6, 9, 10, 12, 23, 156, 210, 219, 241, 260, 262, 276, 279, 282, 283, 284, 296, 298, 299, 300, 304, 329, 365, 368, 386, 395, 396, 397, 398, 399, 400, 401, 416, 460, 478, 511, 598, 619, 687, 688], "n": [1, 3, 5, 6, 9, 10, 12, 23, 156, 210, 219, 239, 241, 260, 261, 262, 274, 276, 279, 282, 283, 284, 296, 298, 299, 300, 304, 329, 337, 346, 347, 353, 365, 368, 386, 395, 396, 397, 398, 399, 400, 401, 416, 460, 478, 511, 537, 546, 548, 592, 598, 619, 660, 685, 687, 688], "bson_fre": [1, 3, 6, 9, 10, 12, 23, 156, 241, 260, 261, 262, 274, 276, 279, 299, 300, 304, 314, 329, 337, 353, 386, 395, 396, 397, 398, 399, 400, 401, 416, 478, 511, 555, 598, 619, 661, 687, 688], "mongoc_cursor_error": [1, 10, 12, 13, 14, 159, 205, 261, 274, 299, 303, 304, 337, 346, 347, 348, 353, 365, 511], "fprintf": [1, 3, 6, 9, 10, 12, 23, 156, 210, 239, 241, 261, 274, 276, 279, 282, 283, 284, 296, 298, 299, 300, 304, 329, 337, 353, 365, 368, 386, 395, 396, 397, 398, 399, 400, 401, 416, 460, 511, 546, 548, 687, 688], "stderr": [1, 3, 5, 6, 9, 10, 12, 21, 23, 156, 210, 239, 241, 261, 274, 276, 279, 282, 283, 284, 296, 298, 299, 300, 304, 329, 337, 353, 365, 368, 386, 395, 396, 397, 398, 399, 400, 401, 416, 460, 511, 546, 548, 648, 687, 688], "failur": [1, 5, 13, 131, 173, 176, 194, 199, 209, 210, 212, 220, 237, 242, 260, 261, 262, 263, 269, 274, 276, 277, 278, 279, 282, 283, 284, 285, 286, 289, 298, 299, 300, 301, 302, 303, 304, 310, 311, 312, 313, 316, 320, 321, 327, 328, 329, 332, 333, 337, 346, 347, 353, 354, 355, 356, 357, 360, 365, 367, 368, 375, 383, 411, 412, 413, 414, 439, 442, 451, 461, 477, 524, 549, 550, 551, 552, 557, 559, 560, 561, 562, 569, 572, 573, 578, 579, 588, 589, 590, 639, 641, 685, 687], "mongoc_cursor_destroi": [1, 10, 12, 14, 159, 261, 274, 277, 278, 299, 302, 303, 304, 333, 337, 353, 355, 356, 364, 365, 410, 416, 511, 687], "bson_destroi": [1, 3, 6, 9, 10, 12, 23, 131, 156, 160, 162, 165, 174, 186, 219, 220, 239, 241, 242, 249, 260, 261, 262, 274, 276, 277, 279, 280, 283, 284, 288, 290, 291, 298, 299, 300, 301, 304, 312, 313, 315, 316, 320, 325, 328, 329, 330, 332, 337, 353, 355, 358, 365, 368, 374, 375, 383, 386, 395, 396, 397, 398, 399, 400, 401, 416, 460, 468, 478, 511, 598, 650, 687, 688], "uri_str": [1, 3, 6, 9, 156, 223, 239, 241, 260, 261, 262, 274, 276, 300, 329, 337, 353, 401, 416, 460, 598, 639, 641, 687], "appnam": [1, 3, 6, 9, 235, 239, 241, 260, 261, 262, 265, 274, 276, 300, 329, 337, 353, 401, 416, 460, 511, 546, 548, 598, 660, 687, 688], "mongoc_uri_new_with_error": [1, 3, 6, 9, 10, 12, 14, 23, 156, 239, 241, 260, 261, 262, 274, 276, 300, 329, 353, 401, 460, 598, 639, 660, 687], "pars": [1, 3, 6, 9, 10, 12, 17, 23, 156, 162, 239, 241, 260, 261, 262, 274, 276, 280, 300, 329, 353, 358, 401, 460, 598, 641, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 687, 688], "exit_failur": [1, 3, 6, 9, 10, 12, 23, 156, 239, 241, 260, 261, 262, 274, 276, 300, 329, 353, 401, 416, 460, 598, 687, 688], "mongoc_client_set_error_api": [1, 3, 6, 9, 10, 12, 13, 14, 23, 241, 260, 261, 262, 274, 276, 296, 300, 329, 337, 353, 401, 460, 511, 546, 548, 598], "mongoc_client_get_collect": [1, 3, 6, 10, 14, 156, 261, 274, 296, 300, 329, 337, 353, 468, 511, 546, 548, 687, 688], "mongoc_uri_destroi": [1, 3, 6, 9, 10, 12, 14, 23, 156, 239, 241, 260, 261, 262, 274, 276, 300, 329, 353, 401, 460, 598, 612, 640, 660, 687], "mongoc_collection_destroi": [1, 3, 6, 10, 12, 14, 23, 156, 206, 260, 261, 262, 274, 281, 296, 300, 326, 329, 337, 353, 366, 401, 468, 511, 598, 687, 688], "exit_success": [1, 3, 6, 9, 10, 12, 156, 239, 241, 260, 261, 262, 274, 276, 300, 329, 353, 401, 416, 460, 598, 687, 688], "you": [1, 3, 4, 5, 10, 11, 12, 13, 18, 19, 20, 21, 22, 23, 25, 158, 162, 205, 210, 211, 212, 239, 241, 242, 274, 276, 277, 280, 281, 283, 284, 285, 286, 288, 289, 290, 291, 295, 296, 298, 299, 303, 304, 310, 312, 313, 315, 316, 317, 319, 320, 328, 329, 332, 348, 355, 358, 359, 363, 365, 368, 374, 375, 383, 386, 443, 444, 445, 447, 448, 452, 453, 454, 455, 456, 460, 472, 473, 474, 485, 486, 494, 497, 512, 521, 529, 546, 552, 553, 560, 611, 660, 662, 674, 680, 681, 685, 687, 688, 689], "pa": 1, "11881643": 1, "oh": 1, "10847115": 1, "ny": [1, 511, 512], "17990455": 1, "fl": 1, "12937284": 1, "tx": 1, "16986510": 1, "il": 1, "11430472": 1, "29760021": 1, "abov": [1, 6, 19, 21, 660, 689], "from": [1, 4, 5, 6, 7, 8, 10, 11, 12, 13, 15, 17, 20, 23, 35, 46, 57, 71, 77, 81, 118, 119, 125, 143, 154, 155, 156, 160, 162, 163, 170, 192, 198, 205, 210, 213, 226, 228, 229, 232, 233, 235, 238, 239, 240, 241, 242, 243, 246, 247, 251, 260, 261, 262, 265, 267, 268, 270, 272, 273, 274, 275, 276, 277, 280, 282, 284, 286, 288, 290, 291, 292, 295, 296, 298, 299, 303, 304, 307, 309, 312, 313, 315, 316, 319, 320, 323, 324, 326, 328, 329, 331, 332, 337, 341, 345, 346, 347, 348, 350, 352, 353, 355, 356, 358, 360, 363, 365, 368, 374, 375, 377, 379, 380, 381, 382, 383, 385, 386, 407, 409, 410, 411, 412, 417, 418, 420, 439, 440, 442, 449, 459, 473, 478, 485, 486, 494, 508, 512, 513, 514, 520, 538, 545, 547, 548, 565, 566, 571, 577, 578, 598, 627, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 674, 685, 688, 689], "oper": [1, 3, 5, 8, 12, 13, 14, 16, 17, 20, 23, 32, 44, 54, 91, 92, 93, 119, 128, 129, 131, 132, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 156, 159, 160, 161, 162, 164, 201, 205, 209, 210, 213, 227, 241, 244, 246, 247, 252, 255, 260, 261, 262, 263, 267, 268, 272, 273, 275, 277, 278, 279, 280, 282, 283, 284, 285, 286, 298, 299, 302, 303, 304, 305, 307, 308, 309, 312, 315, 319, 322, 323, 324, 326, 331, 337, 339, 350, 353, 355, 356, 357, 358, 364, 365, 367, 368, 374, 378, 379, 380, 382, 384, 385, 386, 398, 399, 401, 407, 409, 410, 411, 417, 418, 424, 452, 453, 454, 455, 456, 461, 473, 478, 485, 496, 508, 512, 513, 538, 545, 546, 548, 560, 571, 610, 611, 660, 666, 678, 679, 680, 681, 682, 683, 684, 685, 688, 689], "where": [1, 6, 13, 18, 118, 125, 156, 205, 241, 276, 283, 688], "we": [1, 6, 12, 19, 23, 132, 145, 156, 261, 262, 339, 350, 353, 416, 461, 486, 532, 687, 688], "gener": [1, 7, 12, 13, 17, 170, 194, 241, 243, 296, 310, 312, 313, 315, 374, 413, 414, 417, 418, 449, 460, 486, 487, 488, 489, 512, 530, 569, 585, 588, 685, 687, 689], "composit": 1, "function": [1, 4, 5, 8, 9, 10, 11, 12, 15, 18, 20, 21, 23, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 123, 128, 129, 131, 132, 134, 136, 138, 140, 144, 145, 146, 148, 149, 150, 151, 154, 155, 158, 159, 160, 161, 162, 194, 205, 209, 210, 212, 213, 214, 215, 220, 228, 229, 230, 231, 232, 233, 234, 235, 236, 238, 240, 241, 242, 244, 248, 253, 260, 262, 265, 266, 267, 268, 270, 271, 272, 273, 275, 276, 277, 278, 279, 280, 281, 282, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 302, 303, 304, 305, 310, 311, 313, 314, 315, 316, 317, 318, 319, 320, 321, 325, 327, 328, 329, 330, 331, 332, 333, 336, 337, 339, 344, 345, 346, 347, 348, 350, 351, 352, 354, 355, 356, 357, 358, 360, 362, 363, 364, 365, 367, 368, 370, 372, 373, 374, 375, 376, 377, 378, 379, 380, 382, 383, 386, 396, 398, 399, 400, 409, 410, 419, 420, 421, 424, 436, 439, 450, 452, 453, 454, 455, 456, 461, 464, 467, 470, 472, 476, 490, 496, 499, 500, 531, 536, 547, 549, 550, 551, 552, 553, 554, 557, 559, 562, 566, 568, 569, 570, 571, 573, 575, 576, 577, 578, 579, 580, 583, 588, 589, 590, 593, 594, 597, 607, 608, 609, 619, 621, 627, 630, 633, 639, 641, 653, 663, 678, 679, 680, 681, 682, 683, 684, 687], "addtoset": 1, "last": [1, 246, 247, 262, 305, 424, 485, 512, 532, 554, 660, 687], "max": [1, 13, 156, 214, 215, 278, 299, 304, 411, 557, 601, 606], "min": [1, 304], "avg": 1, "push": [1, 163, 226, 229, 660], "syntax": [1, 299, 304, 688], "read": [1, 12, 13, 15, 155, 156, 159, 160, 161, 162, 205, 209, 210, 213, 216, 217, 241, 242, 244, 260, 261, 267, 268, 274, 275, 276, 277, 278, 279, 280, 282, 283, 284, 298, 299, 302, 303, 304, 307, 308, 315, 316, 322, 323, 331, 332, 337, 345, 348, 350, 353, 355, 356, 357, 358, 364, 365, 367, 368, 371, 374, 375, 378, 379, 381, 382, 383, 409, 410, 411, 412, 417, 418, 420, 439, 452, 453, 454, 455, 456, 460, 490, 492, 493, 494, 495, 496, 498, 499, 500, 501, 502, 503, 504, 505, 506, 508, 509, 510, 511, 543, 546, 547, 548, 559, 571, 577, 578, 579, 593, 598, 607, 608, 621, 626, 627, 628, 656, 657, 688], "queri": [1, 4, 5, 6, 10, 12, 13, 22, 32, 44, 54, 120, 121, 137, 139, 141, 149, 151, 159, 176, 183, 209, 210, 220, 239, 241, 261, 274, 276, 282, 283, 284, 289, 290, 291, 298, 299, 300, 301, 304, 317, 320, 327, 328, 329, 333, 337, 341, 345, 351, 352, 353, 386, 395, 396, 397, 398, 399, 400, 401, 410, 437, 452, 453, 455, 456, 460, 476, 477, 478, 485, 514, 660, 687, 688], "process": [1, 5, 10, 18, 19, 21, 117, 119, 158, 243, 285, 441, 451, 472, 532, 551, 564, 688], "4866692": 1, "sourc": [1, 11, 13, 19, 162, 241, 242, 260, 262, 276, 277, 280, 304, 315, 316, 332, 355, 358, 374, 375, 383, 417, 418, 479, 598, 688], "pipe": [1, 22], "equal": [1, 22, 157, 183, 296, 503, 509, 660], "three": 1, "greatest": 1, "per": [1, 8, 338, 349, 512, 685], "avg_city_pop": 1, "sort": [1, 6, 241, 276, 284, 299, 300, 304, 392, 401, 455, 456, 460], "limit": [1, 8, 12, 23, 159, 232, 262, 278, 282, 283, 284, 289, 298, 299, 304, 317, 347, 349, 351, 356, 660], "produc": [1, 13, 19, 619], "dc": [1, 511, 512], "303450": 1, "27942": 1, "29805615551": 1, "27735": 1, "341099720412": 1, "wy": 1, "smoot": 1, "414": 1, "t": [1, 6, 10, 11, 12, 23, 238, 260, 262, 265, 270, 386, 397, 398, 401, 461, 512, 598, 687], "nest": 1, "except": [1, 12, 18, 20, 23, 158, 235, 238, 239, 240, 262, 304, 472, 512, 579, 660, 685], "descend": [1, 304, 314, 399, 401], "final": [1, 3, 10, 19, 345, 689], "initi": [2, 4, 13, 14, 17, 19, 102, 113, 119, 131, 158, 162, 166, 173, 176, 213, 220, 241, 242, 249, 262, 265, 271, 276, 277, 278, 279, 280, 283, 288, 298, 299, 300, 301, 302, 303, 304, 315, 316, 320, 325, 330, 332, 346, 347, 353, 355, 356, 357, 358, 364, 365, 374, 375, 383, 389, 392, 393, 460, 461, 464, 467, 470, 472, 474, 480, 532, 566, 619, 638, 660, 687], "cleanup": [2, 5, 12, 14, 17, 19, 23, 156, 243, 300, 416], "log": [2, 14, 17, 18, 34, 45, 56, 144, 158, 223, 224, 230, 234, 235, 236, 264, 265, 266, 275, 277, 283, 286, 290, 291, 298, 312, 313, 320, 328, 329, 331, 350, 355, 382, 386, 395, 397, 398, 420, 446, 461, 472, 490, 648, 660, 663, 678, 679, 680, 681, 682, 683, 684, 687, 688], "report": [2, 4, 6, 14, 17, 135, 137, 139, 141, 149, 151, 236, 266, 687], "object": [2, 8, 14, 15, 17, 123, 125, 185, 194, 226, 262, 300, 301, 348, 381, 460, 497, 512, 529, 685, 687, 688], "lifecycl": [2, 14, 17], "gridf": [2, 13, 14, 17, 212, 406, 407, 409, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 425, 426, 428, 429, 430, 431, 432, 433, 436, 437, 438, 441, 443, 444, 449, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 577], "mongoc_auto_encryption_opts_t": [2, 14, 17, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 164, 176, 227, 688], "mongoc_bulk_operation_t": [2, 6, 12, 14, 17, 20, 23, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 148, 149, 150, 151, 285, 286], "mongoc_change_stream_t": [2, 14, 17, 20, 152, 153, 154, 155, 261, 273, 275, 331, 382, 538, 545], "mongoc_client_encryption_t": [2, 14, 17, 20, 165, 166, 173, 174, 175, 176, 185, 186, 187, 188, 189, 192, 198, 199, 688], "mongoc_client_encryption_datakey_opts_t": [2, 14, 17, 166, 167, 168, 169, 170, 171, 688], "mongoc_client_encryption_rewrap_many_datakey_result_t": [2, 14, 17, 199, 200, 201, 202], "mongoc_client_encryption_encrypt_opts_t": [2, 14, 17, 176, 177, 178, 179, 180, 181, 182, 183, 688], "mongoc_client_encryption_opts_t": [2, 14, 17, 189, 190, 191, 192, 193, 194, 195, 196, 688], "mongoc_client_pool_t": [2, 8, 14, 17, 20, 121, 163, 192, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 240, 265, 267, 268, 270, 272, 274, 461, 565, 660, 687], "mongoc_client_session_t": [2, 14, 17, 20, 143, 162, 205, 210, 241, 242, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 262, 263, 273, 276, 277, 280, 283, 284, 286, 288, 290, 291, 295, 296, 298, 303, 304, 312, 313, 315, 316, 319, 320, 328, 329, 332, 355, 358, 363, 365, 368, 374, 375, 383, 386, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 680], "mongoc_client_session_with_transaction_cb_t": [2, 14, 17, 262], "mongoc_database_t": [2, 6, 9, 12, 14, 17, 20, 23, 208, 211, 260, 262, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 382, 383, 401, 411, 416, 598, 687], "mongoc_delete_flags_t": [2, 14, 17, 289], "mongoc_find_and_modify_opts_t": [2, 14, 17, 301, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400], "mongoc_gridfs_file_list_t": [2, 14, 17, 20, 434, 435, 436, 449, 452, 456, 460], "mongoc_gridfs_file_opt_t": [2, 14, 17, 419, 420, 449, 460], "mongoc_gridfs_file_t": [2, 14, 15, 17, 20, 419, 420, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 450, 451, 453, 454, 455, 460, 577], "mongoc_gridfs_bucket_t": [2, 14, 15, 17, 20, 407, 408, 409, 410, 411, 412, 413, 414, 417, 418, 460], "mongoc_gridfs_t": [2, 14, 15, 17, 20, 212, 416, 419, 420, 421, 422, 449, 452, 453, 454, 455, 456, 457, 458, 459], "mongoc_host_list_t": [2, 14, 17, 31, 43, 53, 62, 68, 75, 79, 84, 88, 274, 340, 529, 618], "mongoc_index_opt_geo_t": [2, 14, 17, 463, 464, 468, 471], "mongoc_index_opt_t": [2, 14, 17, 287, 288, 297, 465, 466, 467, 471], "mongoc_index_opt_wt_t": [2, 14, 17, 465, 468, 469, 470], "mongoc_insert_flags_t": [2, 14, 17, 310, 311], "mongoc_iovec_t": [2, 14, 17, 439, 451, 460, 561, 579, 590], "mongoc_matcher_t": [2, 14, 17, 475, 476, 477], "mongoc_optional_t": [2, 14, 17, 479, 480, 481, 482, 484, 518, 519], "mongoc_query_flags_t": [2, 14, 17, 159, 277, 278, 282, 284, 299, 356], "mongoc_rand": [2, 14, 17], "mongoc_read_concern_t": [2, 14, 17, 162, 216, 241, 242, 260, 267, 276, 277, 280, 282, 283, 284, 298, 304, 307, 315, 316, 322, 355, 358, 368, 370, 374, 375, 378, 411, 490, 491, 492, 493, 494, 495, 496, 598, 602, 607, 626, 656], "mongoc_read_mode_t": [2, 14, 17, 504, 507, 510], "mongoc_read_prefs_t": [2, 3, 12, 13, 14, 17, 159, 160, 161, 162, 217, 220, 241, 242, 244, 261, 268, 274, 276, 277, 278, 279, 280, 282, 283, 284, 298, 299, 304, 308, 315, 316, 323, 325, 355, 356, 357, 358, 371, 374, 375, 379, 411, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 593, 603, 608, 628, 657], "mongoc_remove_flags_t": [2, 14, 17, 317], "mongoc_reply_flags_t": [2, 14, 17], "mongoc_server_api_t": [2, 14, 17, 237, 269, 483, 515, 516, 517, 518, 519, 520, 521, 522], "mongoc_server_api_version_t": [2, 14, 17, 520, 521, 523, 524, 526], "mongoc_server_description_t": [2, 3, 14, 17, 63, 64, 70, 90, 95, 99, 213, 218, 219, 244, 527, 528, 529, 530, 531, 532, 533, 534, 536, 537, 592], "mongoc_session_opt_t": [2, 14, 17, 20, 256, 260, 261, 273, 539, 540, 541, 542, 543, 545, 546, 547, 548, 598], "mongoc_socket_t": [2, 14, 17, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 582, 583], "mongoc_ssl_opt_t": [2, 4, 14, 17, 238, 270, 564], "mongoc_stream_buffered_t": [2, 14, 17, 566, 576, 585], "mongoc_stream_file_t": [2, 14, 17, 571, 572, 573, 585], "mongoc_stream_socket_t": [2, 14, 17, 582, 583, 585], "mongoc_stream_t": [2, 14, 15, 17, 20, 271, 274, 406, 409, 412, 413, 414, 415, 416, 417, 418, 420, 460, 474, 566, 567, 568, 569, 570, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 583, 584, 586, 587, 588, 589, 590], "mongoc_stream_tls_t": [2, 14, 17, 576, 585], "mongoc_topology_description_t": [2, 3, 14, 17, 101, 102, 104, 105, 110, 113, 591, 592, 593, 594, 595, 597], "mongoc_transaction_opt_t": [2, 14, 17, 162, 205, 210, 241, 242, 260, 262, 276, 277, 280, 283, 284, 286, 288, 290, 291, 295, 296, 298, 303, 304, 312, 313, 315, 316, 319, 320, 328, 329, 332, 355, 358, 363, 365, 368, 374, 375, 383, 386, 542, 544, 547, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_transaction_state_t": [2, 14, 17, 258], "mongoc_update_flags_t": [2, 14, 17, 327], "version": [2, 7, 9, 12, 14, 17, 18, 19, 22, 23, 117, 118, 123, 157, 162, 171, 180, 183, 185, 194, 207, 236, 237, 241, 242, 266, 269, 275, 276, 279, 280, 288, 296, 298, 300, 304, 315, 316, 331, 332, 346, 347, 358, 374, 375, 382, 383, 400, 401, 405, 461, 468, 475, 476, 477, 478, 496, 497, 516, 520, 521, 522, 523, 524, 526, 548, 565, 678, 679, 680, 681, 682, 683, 684, 687, 688], "mongoc_write_concern_t": [2, 6, 14, 17, 133, 156, 162, 222, 241, 242, 260, 272, 274, 276, 277, 280, 285, 286, 288, 289, 290, 291, 295, 296, 300, 309, 310, 311, 312, 313, 316, 317, 319, 320, 321, 324, 327, 328, 329, 332, 355, 358, 363, 371, 372, 375, 380, 383, 386, 398, 401, 411, 546, 598, 604, 609, 637, 659, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 688], "execut": [3, 6, 8, 9, 17, 18, 38, 49, 60, 80, 91, 97, 120, 121, 128, 129, 131, 136, 137, 138, 139, 140, 141, 144, 146, 147, 148, 149, 150, 151, 159, 161, 162, 201, 241, 242, 260, 276, 277, 278, 279, 280, 282, 283, 284, 285, 286, 298, 299, 302, 303, 304, 305, 315, 316, 330, 332, 333, 337, 339, 341, 346, 350, 353, 355, 356, 358, 364, 365, 374, 375, 383, 398, 410, 453, 455, 456, 546, 680, 689], "event": [3, 8, 19, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 156, 234, 264, 275, 331, 382], "notif": [3, 25, 26, 38, 49, 60, 66, 70, 76, 80, 86, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 107, 110, 113, 234, 264, 275, 331, 382], "conform": [3, 15, 199, 460, 596], "spec": [3, 6, 244, 300, 416, 460, 478, 536, 597], "server": [3, 4, 5, 6, 8, 9, 13, 19, 22, 23, 31, 33, 34, 35, 36, 43, 45, 46, 47, 53, 56, 57, 58, 62, 66, 68, 70, 75, 76, 79, 80, 84, 86, 88, 90, 94, 95, 96, 97, 98, 99, 100, 101, 107, 110, 118, 125, 131, 132, 145, 149, 150, 151, 153, 156, 159, 160, 161, 162, 205, 206, 208, 209, 210, 213, 214, 215, 218, 219, 220, 239, 241, 242, 244, 245, 249, 254, 257, 262, 263, 265, 270, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 288, 289, 290, 291, 295, 296, 298, 299, 301, 302, 303, 304, 310, 311, 312, 313, 315, 316, 317, 319, 320, 321, 322, 323, 325, 327, 328, 329, 330, 331, 332, 333, 335, 337, 338, 339, 341, 345, 346, 347, 349, 350, 352, 354, 355, 356, 357, 358, 363, 364, 365, 368, 373, 374, 375, 376, 377, 378, 379, 382, 383, 386, 398, 420, 422, 439, 440, 441, 459, 461, 462, 468, 473, 478, 485, 512, 514, 521, 523, 525, 527, 528, 529, 530, 531, 532, 534, 535, 536, 537, 548, 557, 592, 593, 594, 596, 597, 610, 611, 671, 672, 681, 682, 683, 684, 685, 687], "discoveri": [3, 536, 597], "And": [3, 213, 536, 597], "logic": [3, 13, 156, 162, 241, 242, 244, 248, 254, 262, 275, 276, 280, 315, 316, 331, 332, 358, 374, 375, 382, 383, 512], "receiv": [3, 5, 6, 7, 8, 13, 26, 27, 30, 31, 33, 39, 40, 42, 43, 50, 53, 55, 62, 63, 64, 65, 68, 69, 74, 75, 79, 84, 85, 88, 89, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 104, 105, 106, 109, 112, 156, 219, 234, 249, 255, 262, 263, 264, 275, 304, 331, 382, 407, 409, 412, 413, 414, 415, 417, 418, 535, 559, 592, 596, 660, 685], "mongoc_apm_callbacks_t": [3, 14, 17, 24, 25, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 234, 264], "mongoc_apm_callbacks_new": [3, 14, 26], "set": [3, 4, 7, 10, 11, 12, 19, 20, 26, 115, 117, 119, 120, 121, 122, 123, 131, 135, 137, 139, 141, 143, 149, 151, 153, 155, 156, 160, 161, 162, 164, 165, 166, 169, 170, 171, 172, 173, 174, 176, 180, 183, 184, 186, 187, 188, 189, 192, 193, 194, 197, 198, 199, 201, 205, 209, 210, 212, 219, 220, 227, 228, 229, 234, 235, 236, 237, 238, 241, 242, 245, 249, 260, 262, 263, 264, 265, 266, 267, 268, 269, 270, 272, 273, 274, 275, 276, 277, 279, 280, 282, 283, 284, 286, 288, 289, 290, 291, 295, 296, 298, 299, 300, 301, 302, 303, 304, 310, 311, 312, 313, 315, 316, 317, 319, 320, 321, 322, 323, 324, 325, 327, 328, 329, 330, 331, 332, 336, 337, 342, 343, 345, 346, 347, 348, 351, 352, 354, 355, 357, 358, 360, 363, 364, 365, 367, 368, 373, 374, 375, 376, 377, 378, 379, 380, 382, 383, 386, 389, 390, 391, 392, 393, 401, 406, 407, 409, 410, 413, 414, 415, 417, 418, 422, 424, 435, 438, 440, 442, 443, 444, 445, 446, 447, 448, 452, 453, 454, 455, 456, 459, 460, 461, 473, 477, 481, 482, 483, 484, 485, 493, 494, 496, 497, 508, 509, 510, 511, 514, 516, 518, 519, 522, 523, 546, 547, 548, 550, 551, 552, 556, 557, 558, 559, 560, 561, 562, 565, 568, 569, 572, 573, 575, 578, 579, 580, 588, 589, 590, 593, 598, 611, 619, 620, 621, 622, 623, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 666, 668, 669, 670, 674, 676, 678, 679, 680, 681, 682, 683, 684, 685, 687, 688, 689], "callback": [3, 24, 25, 26, 27, 31, 33, 39, 40, 42, 43, 50, 53, 55, 62, 63, 64, 68, 75, 79, 84, 85, 88, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 104, 105, 123, 194, 234, 262, 263, 264, 271, 535, 596], "mongoc_client_set_apm_callback": [3, 14, 26, 28, 41, 51, 61, 67, 72, 78, 82, 87, 103, 108, 111, 274], "mongoc_client_pool_set_apm_callback": [3, 14, 26, 28, 41, 51, 61, 67, 72, 78, 82, 87, 103, 108, 111, 239], "gcc": [3, 9, 10, 12, 19, 23, 239, 241, 260, 261, 262, 274, 276, 353, 461, 598, 687], "o": [3, 7, 9, 10, 12, 22, 23, 239, 241, 260, 261, 262, 274, 276, 353, 461, 474, 486, 579, 593, 594, 598, 687], "pkg": [3, 9, 10, 12, 19, 23, 239, 241, 260, 261, 262, 274, 276, 353, 598], "config": [3, 9, 10, 12, 19, 23, 239, 241, 260, 261, 262, 274, 276, 353, 514, 598], "cflag": [3, 9, 10, 12, 23, 239, 241, 260, 261, 262, 274, 276, 353, 461, 598, 687], "lib": [3, 9, 10, 12, 23, 239, 241, 260, 261, 262, 274, 276, 353, 598, 687, 689], "libmongoc": [3, 4, 7, 9, 10, 12, 13, 14, 16, 20, 23, 123, 156, 157, 164, 194, 204, 227, 239, 241, 242, 253, 260, 261, 262, 274, 276, 316, 353, 375, 402, 403, 404, 405, 414, 418, 598, 660, 688], "connection_str": [3, 9, 239, 241, 260, 261, 262, 274, 276, 353, 598, 687], "typedef": [3, 21, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 127, 147, 156, 172, 184, 194, 197, 203, 204, 239, 262, 263, 274, 326, 353, 381, 384, 416, 437, 438, 449, 460, 462, 465, 468, 471, 473, 474, 478, 485, 498, 513, 514, 535, 538, 563, 565, 567, 574, 584, 585, 587, 596, 598, 610, 611, 660], "struct": [3, 7, 20, 25, 115, 127, 147, 156, 172, 184, 197, 203, 204, 219, 238, 239, 261, 262, 270, 273, 274, 281, 326, 353, 359, 381, 416, 437, 438, 449, 460, 462, 465, 468, 471, 474, 478, 483, 496, 521, 522, 535, 537, 538, 539, 545, 550, 552, 556, 563, 565, 567, 574, 584, 585, 587, 592, 596, 598, 599, 607, 608, 609, 660, 678, 679, 680, 681, 682, 683, 684, 687], "succeed": [3, 60, 86, 407, 409, 417, 418, 687], "stats_t": 3, "command_start": 3, "mongoc_apm_command_started_t": [3, 14, 17, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 92], "bson_as_relaxed_extended_json": [3, 156, 329], "mongoc_apm_command_started_get_command": [3, 14, 49], "mongoc_apm_command_started_get_command_nam": [3, 14, 49], "mongoc_apm_command_started_get_host": [3, 14, 49], "mongoc_apm_command_started_get_context": [3, 14, 49], "command_succeed": 3, "mongoc_apm_command_succeeded_t": [3, 14, 17, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 93], "mongoc_apm_command_succeeded_get_repli": [3, 14, 60], "mongoc_apm_command_succeeded_get_command_nam": [3, 14, 60], "mongoc_apm_command_succeeded_get_context": [3, 14, 60], "command_fail": 3, "mongoc_apm_command_failed_t": [3, 14, 17, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 91], "mongoc_apm_command_failed_get_error": [3, 14, 38], "mongoc_apm_command_failed_get_command_nam": [3, 14, 38], "mongoc_apm_command_failed_get_context": [3, 14, 38], "stat": [3, 5, 279], "127": [3, 9, 239, 241, 260, 261, 262, 274, 276, 300, 353, 460, 598, 687], "cmd": [3, 241, 276, 279], "collection_nam": [3, 9, 12, 23, 274, 299, 304, 353], "mongoc_apm_set_command_started_cb": [3, 14, 26], "mongoc_apm_set_command_succeeded_cb": [3, 14, 26], "mongoc_apm_set_command_failed_cb": [3, 14, 26], "context": [3, 28, 35, 41, 51, 61, 67, 72, 78, 82, 87, 103, 108, 111, 234, 262, 264], "pointer": [3, 28, 41, 51, 61, 67, 72, 78, 82, 87, 103, 108, 111, 123, 170, 185, 194, 207, 234, 248, 255, 264, 271, 300, 312, 337, 442, 463, 466, 469, 490, 494, 524, 585, 623, 663, 674], "mongoc_collection_drop": [3, 14, 326, 329, 401, 688], "mongoc_collection_insert_mani": [3, 14, 310, 311, 313, 326], "duplic": [3, 6, 13, 468, 685], "kei": [3, 4, 6, 7, 9, 12, 13, 20, 118, 120, 121, 122, 124, 125, 126, 140, 141, 148, 149, 150, 151, 165, 166, 169, 170, 171, 174, 181, 182, 186, 187, 188, 192, 193, 195, 196, 198, 199, 204, 241, 276, 284, 287, 288, 297, 314, 468, 508, 512, 616, 660, 685, 687, 688], "insert": [3, 5, 8, 10, 12, 13, 22, 23, 134, 135, 141, 149, 151, 156, 166, 176, 206, 208, 241, 260, 262, 276, 286, 310, 311, 312, 313, 321, 326, 329, 332, 383, 397, 416, 473, 546, 598, 660, 688], "mongoc_collection_insert_on": [3, 13, 14, 156, 260, 262, 276, 310, 312, 321, 326, 329, 332, 383, 546, 598, 687, 688], "mongoc_apm_callbacks_destroi": [3, 14, 25, 26], "nsucceed": 3, "nfail": 3, "program": [3, 5, 8, 12, 17, 18, 19, 20, 22, 23, 158, 239, 267, 268, 270, 272, 277, 278, 285, 286, 299, 302, 303, 304, 314, 333, 355, 356, 365, 472, 486, 639, 641], "print": [3, 11, 13, 21, 299, 300, 304, 337, 687], "nindexeswa": 3, "ok": [3, 12, 23, 241, 276, 337, 346, 347, 395, 396, 397, 399, 400, 401, 687], "writeerror": [3, 6, 290, 291, 312, 313, 320, 328, 329], "index": [3, 6, 13, 16, 17, 117, 137, 139, 141, 149, 151, 176, 179, 180, 183, 287, 288, 290, 291, 294, 295, 296, 297, 302, 303, 314, 320, 328, 329, 386, 463, 465, 466, 468, 469, 471, 688], "code": [3, 6, 12, 13, 18, 19, 21, 23, 128, 129, 162, 205, 209, 210, 214, 215, 220, 241, 242, 248, 250, 260, 262, 276, 277, 280, 282, 283, 284, 285, 286, 287, 288, 290, 291, 295, 296, 297, 298, 299, 301, 302, 303, 304, 310, 311, 312, 313, 315, 316, 319, 320, 321, 325, 328, 329, 330, 332, 337, 346, 355, 358, 363, 364, 365, 367, 368, 374, 375, 383, 384, 385, 386, 411, 453, 454, 455, 468, 474, 490, 531, 538, 540, 545, 598, 619, 627, 630, 633, 663, 687, 688, 689], "11000": [3, 6], "errmsg": [3, 6, 337], "output": [3, 10, 12, 19, 144, 194, 242, 275, 277, 283, 286, 290, 291, 298, 301, 312, 313, 316, 320, 328, 329, 331, 355, 375, 382, 386, 395, 396, 397, 399, 400, 401, 619, 688], "been": [3, 5, 19, 20, 120, 121, 154, 213, 214, 215, 226, 232, 252, 253, 255, 259, 261, 273, 299, 334, 335, 345, 424, 435, 482, 489, 494, 496, 497, 502, 505, 514, 538, 545, 552, 554, 586, 610, 619, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 670, 674, 678, 679, 680, 681, 682, 683, 684, 685, 687], "edit": [3, 4, 689], "format": [3, 7, 17, 21, 124, 171, 195, 400, 405, 687], "clariti": 3, "your": [3, 4, 5, 7, 8, 11, 13, 17, 18, 19, 20, 21, 158, 274, 310, 312, 313, 460, 472, 473, 486, 512, 552, 611, 660, 682, 688, 689], "metadata": [3, 4, 413, 414, 417, 418, 432, 438, 448, 449, 458], "databas": [3, 4, 6, 12, 23, 42, 122, 159, 160, 161, 162, 164, 193, 205, 206, 208, 209, 210, 211, 212, 227, 239, 241, 242, 260, 262, 267, 272, 276, 280, 315, 316, 318, 319, 332, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 401, 411, 497, 512, 598, 617, 649, 660, 685, 687, 688], "session": [3, 4, 11, 13, 143, 162, 205, 210, 241, 242, 243, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 273, 276, 277, 280, 283, 284, 286, 288, 290, 291, 295, 296, 298, 303, 304, 312, 313, 315, 316, 319, 320, 328, 329, 332, 355, 358, 363, 365, 368, 374, 375, 383, 386, 538, 539, 541, 542, 543, 544, 545, 546, 547, 548, 598, 610], "id": [3, 4, 5, 32, 34, 35, 36, 37, 44, 45, 46, 47, 48, 54, 56, 57, 58, 59, 65, 69, 89, 106, 109, 112, 131, 132, 145, 161, 162, 165, 205, 210, 213, 218, 241, 242, 248, 250, 254, 257, 262, 276, 277, 280, 283, 284, 295, 296, 298, 303, 304, 315, 316, 319, 332, 339, 341, 346, 347, 350, 355, 358, 363, 365, 368, 374, 375, 383, 407, 409, 412, 413, 414, 417, 418, 429, 446, 460, 530], "cluster": [3, 37, 48, 59, 213, 214, 215, 246, 274, 508, 512, 660, 687, 688], "shown": 3, "here": [3, 10, 12, 19, 275, 304, 331, 382, 512, 563], "consid": [3, 5, 7, 12, 21, 131, 159, 160, 161, 162, 205, 209, 210, 241, 242, 275, 276, 277, 278, 279, 280, 282, 283, 284, 289, 298, 299, 300, 301, 302, 303, 304, 310, 311, 312, 313, 315, 316, 320, 321, 327, 328, 329, 331, 332, 355, 356, 357, 358, 364, 365, 367, 368, 374, 375, 382, 383, 409, 410, 452, 453, 454, 455, 456, 512, 567, 584, 621, 622, 660, 685, 687], "despit": [3, 260], "becaus": [3, 12, 13, 229, 345], "overal": [3, 6, 100, 107], "server_changed_ev": 3, "server_opening_ev": 3, "server_closed_ev": 3, "topology_changed_ev": 3, "topology_opening_ev": 3, "topology_closed_ev": 3, "heartbeat_started_ev": 3, "heartbeat_succeeded_ev": 3, "heartbeat_failed_ev": 3, "server_chang": 3, "mongoc_apm_server_changed_t": [3, 14, 17, 61, 62, 63, 64, 65, 94], "prev_sd": 3, "new_sd": 3, "mongoc_apm_server_changed_get_context": [3, 14, 66], "mongoc_apm_server_changed_get_previous_descript": [3, 14, 66], "mongoc_apm_server_changed_get_new_descript": [3, 14, 66], "mongoc_apm_server_changed_get_host": [3, 14, 66], "host_and_port": [3, 12, 23, 219, 462], "mongoc_server_description_typ": [3, 14, 213, 535], "server_open": 3, "mongoc_apm_server_opening_t": [3, 14, 17, 87, 88, 89, 99], "mongoc_apm_server_opening_get_context": [3, 14, 90], "open": [3, 5, 8, 10, 19, 90, 113, 156, 412, 413, 414, 416, 551, 573, 581, 689], "mongoc_apm_server_opening_get_host": [3, 14, 90], "server_clos": 3, "mongoc_apm_server_closed_t": [3, 14, 17, 67, 68, 69, 95], "mongoc_apm_server_closed_get_context": [3, 14, 70], "close": [3, 13, 20, 70, 110, 229, 261, 273, 409, 417, 418, 485, 538, 545, 551, 559, 568], "mongoc_apm_server_closed_get_host": [3, 14, 70], "topology_chang": 3, "mongoc_apm_topology_changed_t": [3, 14, 17, 100, 103, 104, 105, 106], "prev_td": 3, "new_td": 3, "size_t": [3, 156, 219, 312, 439, 451, 537, 559, 560, 561, 566, 578, 579, 589, 590, 592, 687, 688], "n_prev_sd": 3, "n_new_sd": 3, "pref": [3, 244, 274, 337, 353, 506, 593, 657, 688], "mongoc_apm_topology_changed_get_context": [3, 14, 107], "mongoc_apm_topology_changed_get_previous_descript": [3, 14, 107], "mongoc_topology_description_get_serv": [3, 14, 596], "mongoc_apm_topology_changed_get_new_descript": [3, 14, 107], "topologi": [3, 8, 65, 69, 89, 100, 101, 106, 107, 109, 110, 112, 113, 218, 219, 591, 592, 593, 594, 597, 660], "mongoc_topology_description_typ": [3, 14, 596], "previou": [3, 8, 11, 64, 105, 243, 345, 546], "mongoc_server_description_host": [3, 14, 219, 535], "new": [3, 5, 7, 8, 13, 15, 25, 63, 90, 99, 104, 115, 117, 118, 123, 128, 129, 154, 166, 168, 170, 171, 178, 180, 183, 189, 191, 194, 199, 202, 209, 212, 214, 215, 220, 223, 224, 225, 229, 230, 231, 237, 239, 246, 247, 262, 269, 271, 282, 284, 285, 286, 287, 288, 297, 299, 300, 302, 304, 311, 318, 319, 320, 321, 325, 328, 329, 330, 345, 346, 352, 354, 360, 364, 366, 367, 384, 396, 400, 401, 411, 413, 414, 416, 417, 418, 419, 420, 438, 468, 477, 497, 507, 521, 531, 539, 544, 545, 558, 566, 572, 573, 577, 583, 599, 605, 627, 630, 633, 640, 646, 647, 649, 651, 652, 653, 654, 655, 658, 660, 687, 688, 689], "mongoc_read_prefs_new": [3, 12, 14, 241, 261, 276, 304, 511, 512], "mongoc_read_secondari": [3, 12, 241, 261, 276, 304, 498, 511, 512], "safe": [3, 8, 11, 204, 205, 209, 210, 226, 228, 229, 232, 233, 239, 240, 241, 262, 274, 275, 277, 282, 283, 284, 296, 298, 299, 302, 303, 304, 315, 319, 331, 353, 355, 364, 365, 367, 368, 374, 382, 409, 410, 416, 441, 449, 451, 452, 453, 454, 455, 456, 460, 571, 660, 687], "unfortun": 3, "necessari": [3, 6, 8, 19, 261, 271, 299, 535, 688], "cast": 3, "awai": 3, "mongoc_topology_description_has_readable_serv": [3, 14, 596], "secondari": [3, 8, 12, 261, 485, 503, 509, 512, 660], "els": [3, 6, 8, 12, 23, 156, 210, 241, 260, 262, 276, 279, 282, 283, 284, 296, 298, 368, 386, 395, 396, 397, 398, 399, 400, 401, 460, 474, 478, 511, 541, 578, 598, 619, 687], "unavail": [3, 512, 660], "mongoc_topology_description_has_writable_serv": [3, 14, 596], "primari": [3, 8, 13, 162, 171, 241, 244, 260, 261, 268, 276, 277, 280, 304, 315, 323, 355, 358, 374, 379, 460, 512, 594, 598, 660], "mongoc_read_prefs_destroi": [3, 12, 14, 241, 261, 276, 500, 507, 511, 512], "mongoc_server_descriptions_destroy_al": [3, 14, 219, 535, 592], "topology_open": 3, "mongoc_apm_topology_opening_t": [3, 14, 17, 102, 111, 112], "mongoc_apm_topology_opening_get_context": [3, 14, 113], "topology_clos": 3, "mongoc_apm_topology_closed_t": [3, 14, 17, 101, 108, 109], "mongoc_apm_topology_closed_get_context": [3, 14, 110], "server_heartbeat_start": 3, "mongoc_apm_server_heartbeat_started_t": [3, 14, 17, 77, 78, 79, 97], "mongoc_apm_server_heartbeat_started_get_context": [3, 14, 80], "heartbeat": [3, 71, 76, 77, 80, 81, 86], "mongoc_apm_server_heartbeat_started_get_host": [3, 14, 80], "server_heartbeat_succeed": 3, "mongoc_apm_server_heartbeat_succeeded_t": [3, 14, 17, 81, 82, 83, 84, 85, 98], "mongoc_apm_server_heartbeat_succeeded_get_context": [3, 14, 86], "mongoc_apm_server_heartbeat_succeeded_get_repli": [3, 14, 86], "mongoc_apm_server_heartbeat_succeeded_get_host": [3, 14, 86], "server_heartbeat_fail": 3, "mongoc_apm_server_heartbeat_failed_t": [3, 14, 17, 71, 72, 73, 74, 75, 96], "mongoc_apm_server_heartbeat_failed_get_context": [3, 14, 76], "mongoc_apm_server_heartbeat_failed_get_error": [3, 14, 76], "mongoc_apm_server_heartbeat_failed_get_host": [3, 14, 76], "cb": [3, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 262, 263], "bson_initi": [3, 6, 10, 12, 156, 239, 260, 365, 368, 386, 395, 396, 397, 398, 399, 400, 401, 511, 546, 548, 598, 650, 687, 688], "mongoc_apm_set_server_changed_cb": [3, 14, 26], "mongoc_apm_set_server_opening_cb": [3, 14, 26], "mongoc_apm_set_server_closed_cb": [3, 14, 26], "mongoc_apm_set_topology_changed_cb": [3, 14, 26], "mongoc_apm_set_topology_opening_cb": [3, 14, 26], "mongoc_apm_set_topology_closed_cb": [3, 14, 26], "mongoc_apm_set_server_heartbeat_started_cb": [3, 14, 26], "mongoc_apm_set_server_heartbeat_succeeded_cb": [3, 14, 26], "mongoc_apm_set_server_heartbeat_failed_cb": [3, 14, 26], "demand": [3, 8, 123, 194, 687], "bson_append_int32": [3, 9, 239, 386, 396, 397, 398, 399, 401, 460, 687], "buildinfo": 3, "mongoc_client_command_simpl": [3, 14, 162, 219, 239, 241, 242, 274, 276, 280, 358, 685, 687, 688], "admin": [3, 4, 239, 355, 401, 660, 687], "replica": [3, 10, 12, 13, 205, 209, 210, 219, 241, 268, 274, 275, 276, 277, 282, 283, 284, 298, 299, 302, 303, 304, 315, 323, 331, 355, 364, 365, 367, 368, 374, 379, 382, 409, 410, 452, 453, 454, 455, 456, 460, 485, 512, 593, 685, 687], "r": [3, 9, 10, 156, 219, 239, 260, 261, 296, 460, 546, 548, 598, 660, 687], "27018": [3, 12, 23, 156, 641], "replicasetnoprimari": [3, 597], "rsprimari": [3, 536], "27019": [3, 156, 641], "replicasetwithprimari": [3, 597], "rssecondari": [3, 536], "were": [3, 20, 154, 512, 560, 565, 616, 618, 687], "determin": [3, 4, 13, 155, 348, 353, 399, 593, 594, 660, 688], "also": [3, 4, 6, 7, 8, 11, 12, 17, 18, 19, 156, 198, 235, 243, 262, 263, 319, 330, 345, 351, 460, 512, 523, 548, 565, 643, 649, 655, 658, 660, 687, 688, 689], "discov": [3, 8, 660], "third": [3, 6], "cover": [4, 512], "ensur": [4, 5, 7, 19, 219, 234, 238, 246, 247, 264, 271, 346, 347, 506, 687, 688], "properli": [4, 299], "make": [4, 6, 13, 17, 19, 21, 241, 276, 284, 400, 401, 416, 420, 506, 512, 565, 660, 689], "secur": [4, 118, 125, 170, 486, 688], "sever": [4, 19, 156, 449, 687], "mechan": [4, 486], "By": [4, 6, 7, 20, 261, 273, 327, 538, 545, 611, 660, 685], "an": [4, 5, 6, 7, 8, 10, 11, 12, 13, 15, 19, 21, 23, 38, 49, 60, 66, 70, 71, 76, 77, 80, 81, 86, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 107, 110, 113, 118, 119, 120, 121, 123, 124, 125, 131, 134, 135, 137, 139, 140, 141, 143, 145, 147, 148, 149, 150, 151, 152, 153, 155, 156, 159, 160, 161, 162, 164, 165, 166, 169, 171, 174, 176, 180, 183, 186, 187, 194, 195, 198, 199, 205, 209, 210, 212, 213, 218, 219, 220, 223, 224, 225, 227, 230, 231, 234, 235, 236, 239, 241, 242, 243, 244, 245, 246, 247, 248, 249, 260, 262, 263, 264, 265, 266, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 287, 288, 289, 290, 291, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 310, 311, 312, 313, 315, 316, 317, 318, 319, 320, 321, 325, 327, 328, 329, 330, 331, 332, 334, 336, 337, 346, 347, 348, 350, 353, 354, 355, 356, 357, 358, 359, 360, 362, 363, 364, 365, 367, 368, 373, 374, 375, 376, 377, 382, 383, 386, 389, 392, 393, 395, 397, 398, 406, 411, 413, 414, 415, 416, 417, 418, 420, 422, 424, 429, 435, 439, 440, 441, 446, 450, 451, 453, 454, 455, 459, 460, 461, 473, 477, 479, 485, 487, 488, 490, 496, 512, 530, 535, 546, 547, 548, 549, 552, 557, 558, 560, 567, 573, 592, 596, 611, 614, 615, 616, 617, 619, 620, 621, 622, 623, 625, 629, 638, 641, 642, 643, 644, 645, 651, 652, 653, 654, 660, 661, 663, 666, 668, 671, 673, 675, 678, 679, 680, 681, 682, 683, 684, 687, 688], "thei": [4, 5, 6, 8, 10, 12, 20, 123, 194, 229, 238, 243, 261, 270, 326, 381, 473, 474, 485, 486, 513, 514, 611, 660, 685, 687], "select": [4, 8, 19, 137, 138, 139, 140, 141, 148, 149, 150, 151, 213, 244, 399, 503, 509, 512, 689], "below": [4, 19, 21, 179, 262, 299, 641, 687], "authsourc": [4, 615, 641, 647, 660], "mydb": [4, 641, 687], "current": [4, 7, 13, 19, 22, 124, 154, 156, 183, 194, 195, 199, 220, 246, 247, 258, 275, 323, 330, 331, 334, 376, 377, 379, 382, 442, 450, 461, 478, 493, 512, 525, 544, 551, 554, 560, 585, 593, 594, 610, 660], "authmechan": [4, 614, 619, 641, 646, 650, 660], "deprec": [4, 15, 229, 516, 523], "x509": 4, "introduc": [4, 13, 242, 316, 375, 686], "protocol": [4, 5, 7, 34, 45, 56, 299, 353, 473, 485, 513, 514, 558, 611, 660], "hash": 4, "describ": [4, 6, 19, 171, 199, 213, 244, 276, 332, 383, 498, 610, 660, 688], "7677": 4, "mean": [4, 5, 6, 10, 13, 260, 338, 347, 348, 353, 512, 598, 687], "never": [4, 10, 275, 277, 278, 299, 302, 303, 304, 331, 337, 355, 356, 365, 382, 660], "actual": [4, 8, 132, 229, 339, 341, 345, 660, 689], "sent": [4, 5, 6, 38, 49, 60, 66, 70, 76, 80, 86, 90, 107, 110, 113, 265, 299, 322, 378, 386, 461, 497, 512, 523, 548, 560, 561, 610], "over": [4, 6, 12, 19, 153, 275, 331, 382], "wire": [4, 5, 34, 45, 56, 299, 353, 473, 485, 513, 514, 611, 660], "rather": [4, 8, 19, 485, 486, 660], "comput": [4, 431], "proof": [4, 18], "know": [4, 13, 310, 312, 313, 473, 485, 611], "correct": [4, 267, 272, 324, 380, 620, 621, 622, 623], "negoti": [4, 353], "altern": [4, 7, 19, 165, 169, 171, 181, 187, 198, 660, 687], "explicitli": [4, 23, 299, 304, 322, 378, 483, 497, 512, 676, 688], "undergo": 4, "preprocess": 4, "step": [4, 12, 17, 19], "known": [4, 13, 17, 19, 209, 210, 219, 497, 592, 593, 594, 642, 643, 644, 645, 651, 652, 653, 654, 660], "saslprep": 4, "4013": 4, "perform": [4, 6, 8, 10, 14, 17, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 116, 134, 135, 148, 150, 164, 173, 176, 213, 227, 229, 234, 239, 241, 262, 264, 281, 282, 284, 285, 300, 311, 315, 327, 328, 329, 359, 374, 376, 377, 378, 379, 380, 411, 439, 451, 473, 478, 485, 491, 506, 533, 535, 552, 559, 561, 567, 571, 578, 579, 589, 590, 593, 594, 595, 596, 611, 660, 662, 664, 666, 678, 687, 688, 689], "non": [4, 7, 8, 180, 262, 282, 283, 284, 290, 291, 304, 310, 312, 313, 314, 328, 329, 416, 453, 547, 579, 585, 590, 598, 621, 622, 660], "ascii": 4, "charact": [4, 185, 207, 411, 661], "libicu": 4, "link": [4, 7, 17, 19, 31, 43, 53, 62, 68, 75, 79, 84, 88, 462, 618], "enable_icu": 4, "icu_root": 4, "findicu": 4, "5802": 4, "against": [4, 6, 7, 10, 118, 120, 121, 125, 263, 275, 331, 382, 662, 687, 688], "anoth": [4, 7, 8, 11, 13, 19, 156, 232, 246, 247, 554, 660], "longer": [4, 206, 208, 218, 223, 224, 225, 230, 231, 265, 273, 275, 277, 278, 281, 285, 286, 299, 302, 303, 304, 331, 333, 355, 356, 359, 364, 365, 382, 394, 420, 436, 452, 454, 455, 456, 477, 491, 495, 515, 533, 553, 558, 565, 566, 572, 573, 583, 595, 640, 664, 677], "instead": [4, 128, 129, 156, 163, 209, 220, 229, 240, 241, 267, 268, 270, 272, 282, 284, 285, 289, 299, 302, 304, 311, 315, 321, 325, 330, 346, 364, 367, 374, 384, 452, 453, 485, 496, 531, 621, 627, 630, 633, 666, 678, 679, 680, 681, 682, 683, 684, 687, 688, 689], "compat": [4, 7, 13, 18, 132, 145, 282, 284, 289, 317, 339, 346, 347, 350, 351, 355, 497, 512], "unix": [4, 7, 433, 549, 550, 552, 572, 574, 585, 660], "cyru": [4, 19, 660], "window": [4, 549, 550, 551, 552, 563, 687], "sspi": 4, "modifi": [4, 27, 31, 33, 37, 39, 40, 42, 43, 48, 50, 53, 55, 59, 62, 63, 64, 68, 75, 79, 84, 85, 88, 104, 105, 133, 150, 151, 154, 185, 201, 207, 216, 217, 221, 222, 300, 301, 304, 305, 306, 307, 308, 309, 334, 369, 370, 371, 372, 387, 394, 399, 400, 401, 425, 427, 428, 429, 431, 432, 441, 451, 457, 458, 464, 467, 470, 473, 485, 494, 502, 505, 529, 564, 571, 611, 614, 615, 616, 617, 618, 619, 623, 624, 625, 626, 627, 628, 629, 634, 636, 637, 670, 674, 685], "enable_sasl": 4, "enterpris": [4, 164, 227, 241, 276, 688, 689], "kinit": 4, "method": [4, 6, 226, 237, 239, 243, 262, 269, 298, 460, 660, 688, 689], "mongodbus": 4, "com": [4, 10, 19, 124, 171, 195, 619, 641, 650, 660], "klistcredenti": 4, "file": [4, 7, 11, 12, 13, 19, 22, 23, 119, 156, 211, 212, 407, 409, 410, 411, 412, 413, 414, 416, 417, 418, 419, 420, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 568, 571, 572, 573, 574, 577, 578, 687, 688, 689], "krb5cc_1000": 4, "princip": 4, "expir": [4, 7, 13, 232, 559, 560, 660], "feb": 4, "13": 4, "48": [4, 260, 262, 598, 687], "51": 4, "2013": [4, 19], "23": [4, 19, 123, 194, 397, 401], "krbtgt": 4, "now": [4, 6, 12, 19, 23, 132, 145, 260, 262, 339, 350, 496, 598, 678, 679, 680, 681, 682, 683, 684, 688, 689], "extern": [4, 124, 195], "virtual": 4, "40exampl": [4, 641], "properti": [4, 125, 619, 650, 688, 689], "canonicalize_host_nam": [4, 619, 650], "differ": [4, 19, 213, 299, 337, 474, 486, 512, 687, 689], "what": [4, 12, 13, 19, 21, 229, 416, 685], "fals": [4, 6, 7, 11, 12, 13, 23, 118, 119, 125, 131, 135, 137, 139, 141, 149, 151, 155, 156, 159, 160, 161, 162, 164, 165, 166, 173, 174, 176, 186, 187, 194, 198, 199, 205, 209, 210, 220, 227, 234, 235, 236, 237, 239, 241, 242, 245, 248, 249, 259, 260, 262, 263, 264, 265, 266, 269, 275, 276, 277, 279, 280, 282, 283, 284, 286, 288, 289, 290, 291, 295, 296, 298, 299, 300, 301, 302, 303, 304, 310, 311, 312, 313, 315, 316, 317, 319, 320, 321, 325, 327, 328, 329, 330, 331, 332, 336, 337, 348, 350, 351, 354, 355, 357, 358, 363, 364, 365, 367, 368, 373, 374, 375, 376, 377, 382, 383, 386, 395, 396, 397, 398, 399, 400, 401, 406, 407, 409, 410, 415, 417, 418, 422, 424, 435, 440, 441, 446, 452, 453, 454, 455, 456, 459, 461, 476, 478, 481, 484, 490, 496, 508, 512, 524, 541, 543, 546, 548, 619, 642, 646, 647, 648, 649, 650, 653, 655, 658, 660, 663, 687, 688], "service_nam": [4, 619, 650], "servic": [4, 37, 48, 59, 124, 126, 166, 171, 195, 196, 632, 650, 660], "authmechanismproperti": [4, 619, 650, 660], "encount": [4, 13, 275, 298, 331, 382, 578, 581], "net": [4, 171], "address": [4, 558, 660], "applic": [4, 5, 8, 10, 12, 13, 14, 15, 17, 19, 21, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 119, 145, 156, 213, 226, 229, 234, 235, 244, 253, 264, 265, 267, 271, 272, 298, 299, 320, 324, 328, 329, 346, 347, 349, 350, 351, 352, 380, 497, 512, 535, 593, 594, 596, 660, 685, 687, 688, 689], "behind": [4, 13, 37, 48, 59, 660], "nat": 4, "network": [4, 5, 6, 10, 13, 21, 33, 149, 151, 160, 161, 162, 205, 209, 210, 220, 241, 242, 245, 249, 260, 275, 276, 277, 279, 280, 282, 283, 284, 288, 289, 290, 291, 295, 296, 298, 299, 301, 302, 303, 304, 310, 311, 312, 313, 315, 316, 317, 319, 320, 321, 325, 327, 328, 329, 330, 331, 332, 337, 353, 354, 355, 357, 358, 363, 364, 365, 367, 368, 373, 374, 375, 376, 377, 382, 383, 409, 410, 420, 422, 440, 452, 453, 454, 455, 456, 459, 558, 581, 586, 598, 660, 685], "translat": 4, "firewal": 4, "ticket": 4, "forward": [4, 23, 131], "addressless": 4, "done": [4, 10, 23, 260, 261, 262, 598, 687], "f": [4, 11, 12, 212, 411, 460], "intend": [4, 253, 281, 359, 461, 687], "deleg": 4, "ldap": [4, 19], "veri": 4, "similar": [4, 19, 153, 155, 275, 282, 284, 331, 382, 557, 685, 687], "challeng": 4, "respons": [4, 7, 8, 12, 13, 18, 35, 46, 57, 156, 158, 159, 160, 161, 213, 234, 262, 264, 271, 279, 337, 346, 356, 357, 472, 512, 528, 531, 660, 685, 688], "clear": [4, 123, 194, 243, 264, 373, 554, 648, 688], "text": [4, 444], "strongli": 4, "tl": [4, 13, 14, 16, 17, 19, 126, 196, 238, 270, 271, 354, 565, 581, 585, 587, 633, 635, 641, 642, 689], "valid": [4, 7, 9, 27, 31, 33, 39, 40, 42, 43, 50, 53, 55, 62, 63, 64, 68, 75, 79, 84, 85, 88, 104, 105, 125, 131, 135, 137, 139, 141, 142, 147, 149, 151, 154, 155, 179, 185, 207, 234, 238, 252, 254, 256, 264, 265, 270, 271, 277, 282, 284, 289, 290, 291, 312, 313, 317, 320, 328, 329, 330, 348, 355, 386, 395, 396, 399, 400, 401, 461, 473, 506, 508, 524, 542, 565, 577, 602, 603, 604, 611, 623, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 655, 658, 660, 688], "onc": [4, 8, 12, 18, 19, 20, 131, 147, 156, 158, 205, 209, 210, 226, 234, 235, 236, 237, 238, 241, 269, 275, 277, 282, 283, 284, 298, 299, 302, 303, 304, 315, 331, 355, 364, 365, 367, 368, 374, 382, 409, 410, 452, 453, 454, 455, 456, 461, 472, 482, 512, 565, 660, 688], "deriv": [4, 15, 20, 143, 416], "distinguish": 4, "dure": [4, 21, 120, 121, 192, 311, 461, 513, 548], "ssl_opt": 4, "pem_fil": [4, 7, 238, 270, 565], "mycert": 4, "pem_pwd": [4, 7, 238, 270, 565], "mycertpassword": 4, "ca_fil": [4, 7, 238, 270, 565], "myca": 4, "ca_dir": [4, 7, 238, 270, 565], "trust_dir": 4, "weak_cert_valid": [4, 7, 565], "x509_derived_usernam": 4, "mongoc_client_set_ssl_opt": [4, 7, 14, 238, 274, 565, 660], "none": [4, 13, 141, 149, 151, 211, 304, 493, 660], "ident": [4, 235, 238, 240, 579], "access": [4, 5, 27, 31, 33, 39, 40, 42, 43, 50, 53, 55, 62, 63, 64, 68, 75, 79, 84, 85, 88, 104, 105, 146, 156, 203, 262, 274, 326, 346, 347, 353, 354, 376, 381, 441, 451, 486, 512, 687, 688], "manag": [4, 5, 17, 124, 126, 166, 171, 195, 196, 262, 274, 279, 357, 687, 688], "amazon": [4, 171], "resourc": [4, 18, 158, 163, 167, 171, 175, 177, 190, 200, 226, 243, 250, 292, 335, 361, 387, 421, 423, 434, 472, 475, 492, 501, 527, 553, 570, 591, 613, 665], "arn": [4, 171], "sinc": [4, 6, 8, 156, 239, 261, 345, 433, 532, 660], "alwai": [4, 13, 15, 18, 20, 131, 160, 162, 166, 173, 176, 220, 241, 242, 249, 276, 277, 278, 280, 288, 292, 299, 300, 301, 302, 303, 304, 315, 316, 325, 330, 332, 355, 356, 358, 365, 374, 375, 383, 429, 460, 482], "secret": 4, "token": [4, 13, 154, 156], "obtain": [4, 12, 19, 23, 118, 125, 156, 162, 163, 185, 192, 205, 207, 210, 213, 226, 241, 242, 276, 277, 280, 283, 284, 295, 296, 298, 303, 304, 315, 316, 319, 332, 355, 358, 363, 365, 368, 374, 375, 383, 687, 688], "wai": [4, 8, 10, 13, 19, 512, 611, 687], "aws_session_token": 4, "variabl": [4, 5, 11, 554, 688], "aws_access_key_id": 4, "aws_secret_access_kei": 4, "aws_container_credentials_relative_uri": 4, "retriev": [4, 10, 120, 121, 132, 159, 216, 217, 222, 232, 235, 238, 239, 274, 275, 282, 284, 325, 331, 338, 339, 341, 343, 351, 353, 370, 372, 382, 412, 413, 414, 415, 435, 439, 441, 451, 458, 485, 551, 556, 560, 582, 687, 688], "temporari": [4, 260, 535, 596, 598], "task": [4, 14, 16, 17], "machin": [4, 7, 12, 23], "mongoc_uri_get_auth_mechan": [4, 14, 615, 619, 646, 647, 650, 660], "mongoc_uri_get_auth_sourc": [4, 14, 614, 619, 646, 647, 650, 660], "mongoc_uri_get_mechanism_properti": [4, 14, 614, 615, 646, 647, 650, 660], "mongoc_uri_set_auth_mechan": [4, 14, 614, 615, 619, 647, 650, 660], "mongoc_uri_set_auth_sourc": [4, 14, 614, 615, 619, 646, 650, 660], "mongoc_uri_set_mechanism_properti": [4, 14, 614, 615, 619, 646, 647, 660], "short": [5, 687], "thing": [5, 12, 23], "have": [5, 6, 8, 9, 11, 12, 13, 19, 120, 121, 141, 149, 151, 164, 205, 213, 226, 227, 238, 265, 270, 299, 302, 303, 311, 312, 347, 364, 365, 386, 395, 396, 399, 400, 414, 418, 429, 461, 494, 505, 532, 546, 619, 652, 660, 674, 679, 680, 681, 687, 689], "problem": [5, 460], "did": [5, 261], "call": [5, 6, 8, 10, 12, 13, 18, 20, 21, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 123, 128, 129, 131, 132, 134, 135, 136, 137, 138, 139, 140, 141, 144, 145, 146, 147, 148, 149, 150, 151, 154, 155, 158, 159, 162, 163, 166, 173, 176, 194, 201, 205, 210, 220, 226, 228, 229, 232, 233, 234, 235, 236, 238, 239, 240, 241, 242, 243, 252, 260, 261, 262, 265, 267, 268, 270, 272, 273, 275, 276, 277, 278, 280, 281, 282, 283, 284, 285, 286, 295, 296, 298, 299, 302, 303, 304, 314, 315, 316, 319, 331, 332, 333, 339, 348, 349, 350, 351, 352, 353, 354, 355, 356, 358, 359, 363, 364, 365, 368, 374, 375, 378, 379, 380, 382, 383, 386, 388, 396, 399, 400, 409, 413, 414, 417, 418, 443, 444, 445, 447, 448, 461, 464, 467, 470, 472, 482, 494, 496, 512, 538, 545, 546, 547, 553, 554, 556, 558, 570, 607, 608, 609, 639, 660, 674, 678, 679, 680, 681, 682, 683, 684, 687, 688], "segfault": 5, "leak": [5, 10], "pid": 5, "deliv": 5, "egress": 5, "byte": [5, 124, 170, 195, 209, 210, 367, 368, 430, 439, 451, 486, 487, 488, 559, 560, 561, 566, 569, 575, 578, 579, 588, 589, 590, 688], "valgrind": 5, "show": [5, 11, 156, 299, 337, 688], "linger": 5, "alloc": [5, 11, 18, 131, 152, 158, 206, 208, 211, 219, 223, 224, 225, 230, 231, 262, 273, 275, 277, 278, 281, 285, 286, 299, 302, 303, 304, 331, 333, 335, 355, 356, 359, 360, 364, 365, 366, 382, 394, 410, 411, 419, 420, 436, 452, 453, 454, 455, 456, 461, 472, 477, 491, 495, 500, 507, 515, 533, 549, 555, 566, 572, 573, 577, 583, 592, 595, 612, 619, 639, 640, 641, 661, 664, 677, 687], "own": [5, 8, 12, 21, 23, 156, 416, 457, 458, 460, 528, 529, 531, 626, 628, 637, 687], "copi": [5, 12, 19, 21, 23, 27, 30, 31, 33, 39, 40, 42, 43, 50, 53, 55, 62, 63, 64, 68, 74, 75, 79, 84, 85, 88, 104, 105, 154, 155, 234, 238, 246, 247, 260, 262, 264, 265, 270, 281, 333, 348, 359, 389, 392, 393, 461, 479, 491, 500, 515, 533, 539, 547, 565, 595, 599, 607, 608, 609, 612, 664], "denable_trac": [5, 21], "ON": [5, 11, 19, 21, 688], "trace": [5, 18, 158, 472], "hex": [5, 21, 688], "dump": [5, 21], "stdout": [5, 10, 21, 261, 274, 353, 460, 687], "come": [5, 6, 21, 284, 337, 512, 585], "uniqu": [5, 6, 13, 169, 468, 512, 688, 689], "featur": [5, 6, 19, 22, 164, 227, 238, 270, 284, 304, 575, 662, 687, 688], "help": [5, 11, 19, 687, 689], "develop": [5, 21, 229, 688], "sysadmin": 5, "product": [5, 19], "outsid": [5, 621], "via": [5, 17, 20, 128, 129, 131, 134, 135, 136, 137, 138, 139, 140, 141, 148, 149, 151, 160, 162, 166, 204, 209, 210, 212, 220, 241, 242, 276, 279, 280, 282, 283, 284, 288, 289, 290, 291, 295, 296, 297, 298, 300, 301, 302, 310, 311, 312, 313, 315, 316, 317, 319, 320, 321, 325, 327, 328, 329, 330, 332, 336, 337, 358, 360, 363, 364, 367, 368, 373, 374, 375, 376, 377, 383, 422, 424, 435, 440, 453, 454, 455, 459, 477, 687], "memori": [5, 10, 18, 158, 262, 279, 357, 461, 472], "segment": 5, "graph": 5, "statist": [5, 325], "about": [5, 20, 33, 218, 261, 273, 299, 304, 325, 337, 460, 461, 497, 522, 523, 535, 538, 545, 660, 687], "easili": [5, 156, 585], "tool": [5, 19, 688], "munin": 5, "nagio": 5, "often": 5, "watch": [5, 154, 156], "interv": [5, 8, 660], "5": [5, 6, 19, 156, 242, 260, 283, 298, 304, 316, 375, 416, 461, 485, 548, 598, 643, 660], "monitor": [5, 8, 14, 17, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 213, 234, 264, 461, 535, 536, 593, 594, 596, 597], "linux": [5, 7, 19, 563], "platform": [5, 7, 17, 18, 461, 474, 549, 550, 552, 573, 687, 689], "maco": 5, "arm64": 5, "denable_shm_count": 5, "off": [5, 7, 18, 19, 156, 275, 331, 382, 688], "addition": [5, 19, 156, 279, 512], "alreadi": [5, 13, 19, 194, 213, 260, 265, 473, 611, 646, 647, 651, 652, 653, 654], "disabl": [5, 7, 20, 117, 261, 273, 298, 512, 538, 545, 546, 660, 688], "runtim": [5, 11, 486], "environ": [5, 17, 486, 688, 689], "mongoc_disable_shm": 5, "track": [5, 341, 483, 687], "activ": [5, 8, 213], "dispos": 5, "pool": [5, 14, 16, 17, 121, 163, 164, 226, 227, 228, 229, 232, 233, 234, 235, 236, 237, 238, 239, 240, 243, 250, 261, 266, 267, 268, 270, 272, 273, 274, 528, 530, 531, 538, 545, 565, 687], "socket": [5, 8, 274, 354, 376, 377, 474, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 563, 569, 580, 583, 584, 588, 660, 681, 683, 684, 689], "stream": [5, 13, 32, 44, 54, 152, 153, 154, 155, 156, 271, 275, 331, 382, 406, 409, 412, 413, 414, 415, 416, 417, 418, 420, 460, 485, 559, 567, 568, 569, 570, 571, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 586, 587, 588, 589, 590], "transfer": [5, 577, 583], "given": [5, 12, 119, 174, 185, 186, 187, 199, 207, 239, 243, 262, 271, 274, 289, 290, 291, 314, 317, 346, 347, 360, 376, 428, 442, 461, 524, 593, 660, 687], "22203": 5, "total": [5, 8, 12, 232, 660], "13247": 5, "ingress": 5, "13246": 5, "getmor": [5, 32, 44, 54, 156, 241, 315, 352, 374], "delet": [5, 128, 129, 137, 146, 174, 276, 289, 290, 291, 317, 326, 332, 383, 384, 407, 416, 513, 660], "updat": [5, 6, 8, 10, 13, 123, 146, 148, 149, 150, 151, 154, 194, 261, 262, 275, 276, 300, 301, 319, 320, 321, 326, 327, 328, 329, 331, 332, 382, 383, 386, 393, 395, 396, 397, 398, 399, 401, 528, 531, 532, 611, 646, 647, 651, 652, 653, 654, 660, 689], "killcursor": [5, 243], "msg": [5, 365], "794931": 5, "589694": 5, "timeout": [5, 8, 10, 13, 20, 131, 155, 159, 160, 161, 162, 232, 242, 261, 262, 273, 276, 279, 280, 289, 300, 301, 310, 311, 312, 313, 316, 320, 321, 327, 328, 329, 332, 337, 352, 356, 357, 358, 375, 383, 538, 545, 549, 552, 560, 561, 577, 578, 579, 586, 589, 590, 606, 621, 622, 660, 671, 672, 681, 683, 684, 685], "auth": 5, "request": [5, 7, 19, 34, 45, 56, 171, 194, 239, 275, 277, 288, 295, 296, 304, 331, 349, 355, 382, 422, 511, 660, 687], "think": 5, "ve": [5, 10, 11, 353], "pleas": [5, 19, 22, 128, 129, 209, 268, 285, 289, 302, 311, 321, 323, 346, 364, 367, 379, 384, 498, 531, 627, 630, 633, 678, 687], "case": [5, 6, 10, 12, 13, 19, 22, 132, 220, 260, 262, 265, 296, 364, 373, 460, 598, 620, 621, 622, 623, 638, 642, 643, 644, 645, 651, 652, 653, 654, 660], "jira": 5, "account": [5, 241, 242, 276, 315, 316, 332, 374, 375, 383], "login": [5, 124, 195], "navig": 5, "cdriver": 5, "project": [5, 14, 16, 17, 19, 304], "click": [5, 689], "reproduc": 5, "e": [5, 6, 7, 10, 12, 15, 19, 166, 192, 262, 326, 346, 355, 482, 485, 512, 648, 660], "csharp": 5, "java": 5, "core": [5, 688], "public": [5, 7, 660, 686], "explain": [6, 689], "take": [6, 7, 8, 241, 242, 248, 262, 276, 299, 315, 316, 332, 374, 375, 383, 386, 398, 401, 490, 523, 579, 660, 663], "advantag": [6, 19], "batch": [6, 147, 156, 278, 285, 286, 299, 304, 338, 345, 346, 349, 356], "reduc": [6, 12, 21, 164, 227, 478], "round": [6, 338, 345, 349, 534, 660], "trip": [6, 338, 345, 349, 534, 660], "increas": 6, "throughput": 6, "fetch": [6, 133, 205, 219, 221, 302, 303, 306, 307, 308, 309, 334, 340, 341, 345, 364, 365, 367, 368, 369, 371, 400, 401, 425, 426, 427, 428, 429, 430, 431, 432, 433, 435, 502, 504, 505, 520, 561, 576, 592, 614, 615, 617, 618, 619, 624, 625, 626, 627, 628, 629, 633, 634, 635, 636, 637, 666, 667, 668, 669, 687], "handl": [6, 13, 18, 156, 158, 262, 277, 278, 285, 286, 299, 302, 303, 304, 326, 333, 355, 356, 365, 381, 411, 460, 472, 511, 563, 639, 641, 660, 685, 687], "mongoc_collection_create_bulk_operation_with_opt": [6, 12, 14, 23, 131, 285, 326], "until": [6, 8, 13, 132, 134, 135, 155, 214, 215, 219, 232, 262, 339, 341, 348, 353, 417, 418, 420, 623, 660, 685], "coalesc": 6, "singl": [6, 12, 22, 120, 121, 129, 134, 135, 138, 139, 140, 141, 147, 150, 151, 163, 164, 192, 219, 274, 289, 312, 317, 327, 348, 461, 597, 611, 660, 687], "consecut": 6, "mongoc_bulk_operation_insert": [6, 12, 14, 23, 141, 147, 285, 286], "effect": [6, 7, 9, 145, 246, 247, 350, 351], "mongoc_bulk_operation_execut": [6, 12, 13, 14, 23, 128, 129, 132, 134, 135, 136, 137, 138, 139, 140, 141, 145, 147, 148, 149, 150, 151, 285, 286], "bulk1": 6, "assert": [6, 211, 460], "bool": [6, 9, 11, 12, 23, 71, 77, 81, 116, 117, 135, 137, 139, 140, 141, 142, 148, 149, 150, 151, 153, 155, 156, 157, 160, 161, 162, 164, 165, 166, 173, 174, 176, 186, 187, 194, 198, 199, 219, 220, 227, 234, 235, 236, 237, 239, 241, 242, 244, 245, 248, 249, 253, 259, 260, 261, 262, 263, 264, 265, 266, 269, 276, 279, 280, 285, 287, 288, 289, 290, 291, 293, 294, 295, 296, 297, 300, 301, 304, 310, 311, 312, 313, 315, 316, 317, 318, 319, 320, 321, 325, 327, 328, 329, 330, 332, 336, 337, 344, 345, 348, 350, 351, 354, 357, 358, 362, 363, 373, 374, 375, 376, 377, 383, 385, 386, 388, 395, 396, 397, 398, 399, 400, 401, 406, 407, 409, 415, 416, 417, 418, 422, 424, 435, 440, 441, 446, 459, 461, 468, 476, 481, 484, 490, 494, 496, 506, 516, 522, 524, 541, 543, 546, 548, 565, 581, 586, 593, 594, 598, 619, 620, 633, 635, 638, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 658, 663, 666, 667, 669, 673, 674, 675, 676, 678, 679, 687, 688], "ret": [6, 12, 23, 239, 687, 688], "10000": [6, 156, 241, 276], "mongoc_bulk_operation_destroi": [6, 12, 14, 23, 147, 285, 286], "ninsert": [6, 22, 241, 276], "nmatch": 6, "nmodifi": 6, "nremov": 6, "nupsert": 6, "writeconcernerror": [6, 290, 291, 312, 313, 320, 328, 329], "remov": [6, 8, 21, 22, 70, 95, 136, 137, 138, 139, 140, 141, 148, 149, 150, 151, 198, 290, 291, 300, 304, 317, 376, 377, 397, 440, 459, 475, 476, 477, 478, 513, 660, 685, 687, 689], "togeth": [6, 411, 473, 485, 513, 514, 611], "serial": 6, "bulk2": 6, "opt": [6, 9, 10, 114, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 131, 135, 137, 139, 141, 149, 151, 156, 162, 164, 166, 167, 169, 170, 171, 176, 177, 179, 180, 181, 182, 183, 189, 190, 192, 193, 194, 195, 196, 205, 210, 213, 227, 238, 241, 242, 248, 260, 261, 262, 270, 273, 275, 276, 277, 280, 283, 284, 286, 287, 288, 290, 291, 295, 296, 297, 298, 301, 303, 304, 312, 313, 315, 316, 319, 320, 328, 329, 331, 332, 346, 347, 355, 358, 360, 363, 365, 368, 374, 375, 382, 383, 386, 388, 389, 390, 391, 392, 393, 395, 396, 397, 398, 399, 400, 401, 410, 411, 413, 414, 417, 418, 419, 420, 455, 456, 460, 464, 467, 468, 470, 480, 481, 482, 484, 490, 539, 540, 541, 542, 543, 546, 547, 548, 598, 599, 600, 601, 602, 603, 604, 606, 607, 608, 609, 660, 688], "bson_new": [6, 126, 196, 241, 260, 261, 262, 276, 598, 687, 688], "mongoc_bulk_operation_remov": [6, 14, 128, 137, 147], "few": 6, "foo": [6, 11, 277, 299, 304, 511], "bar": [6, 277, 299, 304], "bcon_utf8": [6, 9, 12, 23, 241, 276, 277, 279, 284, 299, 304, 397, 401, 511, 687], "mongoc_bulk_operation_update_many_with_opt": [6, 14, 147, 148, 151], "inc": [6, 12, 23, 261, 386, 395, 396, 398, 401], "j": [6, 11, 660], "upsert": [6, 140, 141, 148, 149, 150, 151, 300, 320, 321, 328, 329, 397, 401, 611], "bcon_bool": [6, 277, 304, 399, 400, 401, 687, 688], "replac": [6, 119, 140, 141, 146, 271, 274, 283, 320, 650, 689], "mongoc_bulk_operation_replace_one_with_opt": [6, 14, 140, 147], "base": [6, 13, 19, 211, 274, 300, 471, 478, 495, 512, 576, 585, 626, 628, 637, 640, 660, 662, 677, 687], "sixth": 6, "its": [6, 7, 8, 12, 13, 15, 19, 20, 21, 23, 70, 95, 101, 110, 154, 156, 162, 205, 210, 212, 229, 239, 241, 242, 243, 250, 261, 273, 276, 277, 280, 281, 283, 284, 292, 295, 296, 298, 303, 304, 315, 316, 319, 332, 345, 355, 358, 359, 363, 365, 368, 374, 375, 383, 407, 440, 460, 528, 531, 538, 545, 619, 650, 660, 687], "arbitrari": [6, 123, 194, 284, 304, 386, 460, 687], "occur": [6, 10, 13, 19, 21, 22, 141, 149, 151, 153, 194, 241, 275, 277, 278, 299, 302, 303, 304, 315, 319, 331, 336, 337, 353, 355, 356, 365, 374, 382, 415, 435, 441, 446, 486, 660], "after": [6, 10, 13, 18, 20, 27, 31, 33, 39, 40, 42, 43, 50, 53, 55, 62, 63, 64, 68, 75, 79, 84, 85, 88, 104, 105, 144, 146, 147, 154, 156, 158, 226, 234, 238, 241, 243, 260, 261, 264, 265, 270, 273, 275, 276, 285, 286, 300, 312, 319, 329, 331, 337, 341, 351, 352, 378, 379, 380, 382, 386, 396, 399, 400, 409, 413, 414, 417, 418, 437, 460, 461, 472, 482, 485, 496, 538, 545, 546, 547, 548, 554, 565, 570, 573, 607, 608, 609, 617, 619, 624, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 678, 679, 680, 681, 682, 683, 684, 687], "next": [6, 7, 8, 12, 17, 155, 345, 348, 436, 462, 660, 685], "due": [6, 20, 205, 209, 210, 241, 261, 273, 275, 277, 282, 283, 284, 298, 299, 302, 303, 304, 315, 331, 355, 364, 365, 367, 368, 374, 382, 409, 410, 452, 453, 454, 455, 456, 538, 545, 660], "constraint": [6, 652], "fourth": 6, "bulk3": 6, "indic": [6, 7, 71, 77, 81, 153, 156, 194, 253, 345, 417, 418, 442, 450, 518, 519, 578, 579, 590, 633, 635, 660, 667, 669, 671, 672, 678, 679, 681, 682, 683, 684, 687], "bson_append_bool": [6, 10], "mongoc_bulk_operation_remove_on": [6, 14, 129, 136, 139, 147], "mongoc_bulk_operation_replace_on": [6, 14, 147], "e11000": 6, "_id_": [6, 284, 687], "dup": 6, "domain": [6, 10, 13, 21, 296, 337, 453, 454, 455, 558, 630, 631, 660], "mongoc_error_command": [6, 13], "later": [6, 12, 23, 137, 139, 141, 149, 151, 156, 162, 241, 242, 276, 277, 280, 283, 284, 286, 290, 291, 295, 296, 298, 299, 312, 313, 315, 316, 320, 328, 329, 332, 352, 353, 355, 358, 363, 374, 375, 383, 386, 395, 411, 485, 508, 512, 548, 688], "schema": [6, 125, 277, 312, 313, 320, 328, 329, 355, 395, 688], "defin": [6, 10, 11, 12, 13, 21, 146, 179, 183, 253, 262, 349, 473, 536, 597, 611, 618, 660, 662, 688, 689], "bulk5": 6, "bulk5_fail": 6, "31": [6, 473, 611], "32": [6, 426, 465, 621, 653, 671, 689], "compli": 6, "rule": [6, 18, 125, 395], "previous": [6, 346, 388, 496, 588, 648, 678, 679, 680, 681, 682, 683, 684], "bulk5_success": 6, "either": [6, 7, 12, 23, 154, 156, 192, 236, 266, 277, 290, 291, 300, 313, 320, 328, 329, 337, 355, 373, 395, 660], "dbadmin": [6, 395], "restor": [6, 21, 395], "role": [6, 354, 395], "mongoc_bulk_operation_set_bypass_document_valid": [6, 14, 147], "mongoc_client_get_databas": [6, 9, 12, 14, 23, 260, 262, 274, 355, 381, 401, 416, 598, 687], "testasdf": 6, "mongoc_database_create_collect": [6, 14, 260, 262, 381, 401, 598], "collnam": [6, 511], "couldn": [6, 12], "mongoc_database_destroi": [6, 9, 12, 14, 23, 208, 211, 260, 262, 355, 359, 381, 401, 416, 598, 687], "121": 6, "write_concern": [6, 241, 260, 272, 276, 277, 285, 289, 305, 310, 311, 317, 321, 324, 327, 380, 598, 609, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 678, 679, 680, 681, 682, 683, 684], "custom": [6, 11, 18, 156, 158, 170, 171, 244, 271, 274, 472, 512, 688], "g": [6, 7, 12, 15, 19, 166, 346, 355, 512, 648, 660], "wtimeout": [6, 260, 598, 681], "regardless": [6, 241, 315, 374, 551], "bulk4": 6, "wc": [6, 156, 386, 398, 401, 659, 688], "mongoc_write_concern_new": [6, 14, 156, 241, 260, 276, 277, 386, 398, 401, 598, 685, 688], "mongoc_write_concern_set_w": [6, 14, 277, 386, 398, 401, 546, 685], "mongoc_write_concern_set_wtimeout_int64": [6, 14, 672, 681, 683, 685], "100": [6, 232, 278, 299, 386, 398, 401, 644, 660], "millisecond": [6, 155, 352, 398, 433, 534, 549, 552, 578, 579, 589, 590, 601, 606, 660, 671, 672, 681, 683, 684], "mongoc_write_concern_append": [6, 14, 156, 162, 241, 242, 276, 277, 280, 286, 288, 290, 291, 295, 296, 312, 313, 316, 319, 320, 328, 329, 332, 355, 358, 363, 375, 383, 386, 398, 401, 411, 685, 688], "11": [6, 687], "mongoc_write_concern_destroi": [6, 14, 156, 241, 260, 276, 386, 398, 401, 598, 664, 677, 685, 688], "64": [6, 19, 430, 450, 643, 644, 653, 672, 689], "wait": [6, 8, 261, 275, 304, 331, 352, 382, 486, 578, 589, 660, 671, 672, 681, 683, 684], "replic": [6, 512, 660], "out": [6, 8, 12, 13, 19, 135, 137, 139, 141, 149, 151, 194, 213, 244, 248, 261, 262, 277, 278, 290, 291, 299, 302, 303, 304, 312, 313, 328, 329, 340, 355, 356, 365, 453, 454, 455, 485, 524, 619, 660], "mongoc_error_write_concern": [6, 13], "preced": [6, 7], "mere": 6, "satisfi": [6, 304, 352, 506, 682], "yet": [6, 345], "bulk_col": 6, "selector": [6, 128, 129, 136, 137, 138, 139, 140, 141, 148, 149, 150, 151, 261, 284, 289, 290, 291, 317, 320, 327, 328, 329, 513], "uint32_t": [6, 10, 36, 47, 58, 131, 132, 145, 159, 161, 169, 170, 213, 218, 228, 229, 247, 255, 257, 278, 299, 311, 338, 339, 343, 346, 349, 350, 352, 356, 391, 398, 438, 439, 451, 530, 687, 688], "One": [6, 7, 19, 241, 276, 284, 442, 660], "normal": [6, 8, 19, 241, 260, 262, 276, 284, 304, 485, 598], "en_u": [6, 241, 276, 284, 304], "casefirst": [6, 241, 276, 284, 304], "lower": [6, 241, 276, 284, 304, 487], "x": [6, 7, 9, 11, 12, 17, 23, 156, 241, 261, 276, 329, 337, 662], "bcon_int64": [6, 156, 241, 276, 283, 298, 304, 337], "gt": [6, 10, 12, 22, 241, 276, 284, 329, 478], "mongoc_bulk_operation_update_one_with_opt": [6, 14, 147, 148, 149, 150], "w": [6, 156, 386, 398, 401, 660, 668, 674, 680, 688], "zero": [6, 132, 199, 278, 282, 284, 338, 339, 341, 349, 621, 622, 660, 680, 681, 683, 684], "legaci": [6, 17, 35, 46, 57, 304], "opcod": 6, "op_insert": 6, "op_upd": 6, "op_delet": 6, "bulk6": 6, "empti": [6, 12, 13, 21, 33, 119, 153, 156, 165, 186, 187, 194, 198, 199, 275, 288, 301, 302, 303, 304, 322, 331, 337, 345, 378, 382, 389, 392, 393, 479, 512, 528, 531, 616, 660, 687], "mongoc_uri_set_option_as_bool": [7, 14, 660], "mongoc_uri_tl": [7, 660], "further": [7, 262], "privat": [7, 585, 660, 687], "concaten": [7, 660], "mongoc_uri_tlscertificatekeyfilepassword": [7, 126, 196, 660], "tlscertificatekeypassword": [7, 660], "unlock": [7, 660], "mongoc_uri_tlscafil": [7, 126, 196, 660], "bundl": [7, 19, 660], "whom": [7, 660], "mongoc_uri_tlsallowinvalidcertif": [7, 660], "tlsallowinvalidcertif": [7, 660], "accept": [7, 156, 229, 338, 549, 621, 622, 650, 660], "untrust": [7, 660], "issuer": [7, 660], "etc": [7, 19, 205, 209, 210, 241, 275, 277, 282, 283, 284, 298, 299, 302, 303, 304, 315, 326, 331, 355, 364, 365, 367, 368, 374, 382, 409, 410, 452, 453, 454, 455, 456, 660], "mongoc_uri_tlsallowinvalidhostnam": [7, 660], "tlsallowinvalidhostnam": [7, 660], "man": [7, 13, 660], "middl": [7, 660], "mongoc_uri_tlsinsecur": [7, 660], "tlsinsecur": [7, 660], "insecur": [7, 660], "impli": [7, 12, 23, 660], "mongoc_uri_tlsdisablecertificaterevocationcheck": [7, 660], "tlsdisablecertificaterevocationcheck": [7, 660], "revoc": [7, 660], "crl": [7, 660], "ocsp": [7, 660], "mongoc_uri_tlsdisableocspendpointcheck": [7, 660], "tlsdisableocspendpointcheck": [7, 660], "respond": [7, 8, 13, 296, 660], "endpoint": [7, 124, 171, 195, 660], "stapl": [7, 660], "mongoc_client_pool_set_ssl_opt": [7, 14, 239, 270, 565, 660], "most": [7, 19, 235, 265, 275, 290, 291, 299, 326, 328, 329, 331, 382, 512, 523, 528, 531, 689], "tlsclientcertificatekeyfil": 7, "tlsclientcertificatekeypassword": 7, "allow_invalid_hostnam": [7, 565], "exclus": [7, 156, 181, 182, 275, 299, 331, 382, 546, 548], "crl_file": [7, 238, 270, 565], "those": [7, 10, 12, 19, 241, 276, 315, 332, 374, 383, 503, 509], "armor": 7, "overwrit": [7, 648], "entir": [7, 260, 262, 422, 598, 612], "control": [7, 19, 486, 660, 688], "respect": [7, 229, 660, 687], "expos": [7, 660], "attack": 7, "potenti": [7, 19, 131, 241, 315, 345, 374, 439, 660], "revok": 7, "find": [7, 12, 19, 22, 23, 32, 44, 54, 120, 121, 188, 199, 300, 301, 304, 326, 337, 339, 346, 347, 350, 365, 386, 387, 394, 395, 396, 397, 398, 399, 400, 401, 410, 452, 454, 455, 456, 485, 548, 660], "flag": [7, 11, 19, 159, 277, 278, 282, 284, 289, 299, 310, 311, 317, 327, 356, 384, 390, 401, 461, 483, 518, 519, 559, 573], "enable_ssl": 7, "auto": [7, 11, 115, 119, 207, 688], "libssl": [7, 19], "openssl_root": 7, "besid": [7, 277], "industri": 7, "best": [7, 420, 512], "regul": 7, "newer": [7, 15, 19, 304, 662], "least": [7, 124, 195, 229, 305, 512, 685], "recent": [7, 19, 229, 528, 531], "dopenssl_root_dir": 7, "absolut": [7, 119, 552, 560, 561], "distribut": [7, 12, 19, 23, 660], "overridden": [7, 162, 241, 242, 276, 277, 280, 304, 315, 316, 326, 332, 355, 358, 374, 375, 381, 383, 547, 598], "onlin": 7, "statu": [7, 66, 76, 80, 86, 94, 96, 97, 98, 220, 489, 596], "6960": 7, "fulli": [7, 486], "even": [7, 10, 131, 166, 173, 176, 220, 262, 277, 278, 279, 285, 299, 302, 303, 304, 345, 355, 356, 357, 365, 395, 401, 473, 565, 680], "partial": [7, 485], "extens": [7, 19, 460, 585], "7633": 7, "continu": [7, 10, 19, 260, 285, 286, 312, 319, 473, 598], "down": [7, 226, 485, 551, 660], "schannel": 7, "crypto": [7, 273], "cryptographi": 7, "cng": 7, "them": [7, 19, 219, 460, 461, 490, 565, 663, 687, 689], "look": [7, 11, 19, 460, 461, 660, 687, 688], "root": 7, "confirm": [7, 8, 19, 660], "mark": [7, 253, 496, 678, 679, 680, 681, 682, 683, 684, 686, 688], "io": [7, 19, 585], "cc": [7, 461], "keychain": 7, "thread": [8, 17, 18, 20, 21, 120, 121, 158, 163, 164, 192, 226, 239, 261, 273, 441, 451, 461, 472, 538, 545, 554, 660], "optim": [8, 19, 156], "embed": [8, 279], "languag": [8, 12, 17, 23, 145, 146, 213, 244, 277, 286, 290, 291, 320, 328, 329, 346, 347, 350, 355, 386, 585, 687], "php": 8, "multi": [8, 13, 20, 163, 192, 239, 245, 249, 250, 259, 260, 261, 273, 274, 538, 545, 598, 605, 660], "minim": 8, "background": [8, 468, 660], "block": [8, 155, 156, 232, 240, 261, 272, 275, 324, 331, 348, 380, 382, 436, 439, 485, 578, 579, 589, 590, 593, 594, 660, 662, 685], "scan": [8, 660], "hosta": 8, "hostb": 8, "my_r": [8, 645], "begin": [8, 11, 13, 18, 26, 49, 80, 92, 97, 158, 162, 205, 210, 241, 242, 276, 277, 280, 283, 284, 285, 286, 288, 290, 291, 295, 296, 298, 299, 303, 304, 312, 313, 315, 316, 319, 320, 328, 329, 332, 333, 355, 358, 363, 365, 368, 374, 375, 383, 386, 461, 472, 496, 565, 660, 678, 679, 680, 681, 682, 683, 684], "concurr": [8, 460], "asynchron": 8, "poll": 8, "put": 8, "fan": 8, "re": [8, 12, 23, 261, 275, 331, 333, 382, 416, 687], "roughli": [8, 660], "elaps": 8, "heartbeatfrequencym": [8, 660], "mongoc_client_pool_new": [8, 14, 20, 239, 687], "mongoc_client_pool_pop": [8, 14, 20, 226, 234, 235, 236, 238, 239, 240, 461, 660, 687], "launch": [8, 23], "independ": [8, 20, 547, 598], "hello": [8, 22, 35, 46, 57, 71, 76, 77, 80, 81, 86, 96, 97, 98, 265, 461, 478, 512, 528, 531, 532, 534, 660, 687], "view": [8, 164, 227, 528, 531], "addit": [8, 10, 17, 119, 135, 137, 139, 141, 149, 151, 156, 162, 165, 205, 210, 241, 242, 274, 275, 276, 277, 280, 283, 284, 286, 288, 290, 291, 295, 296, 298, 299, 303, 312, 313, 315, 316, 319, 320, 328, 329, 331, 332, 337, 345, 346, 347, 353, 355, 358, 363, 365, 368, 374, 375, 382, 383, 386, 411, 413, 414, 417, 418, 652, 660, 688, 689], "termin": [8, 185, 207, 209, 210, 367, 368], "mongoc_client_pool_push": [8, 14, 20, 163, 226, 229, 232, 239, 687], "unblock": 8, "usabl": 8, "well": [8, 10, 13, 335, 346, 486, 660, 688], "everi": [8, 660], "waitqueuetimeoutm": [8, 232, 660], "1000": [8, 10, 156, 260, 598, 687], "appropri": [8, 19, 282, 284, 289, 317, 346, 347, 442, 508, 512, 687], "action": [8, 164, 227, 262, 326, 381], "size": [8, 13, 164, 214, 215, 227, 229, 241, 276, 299, 338, 349, 411, 413, 414, 417, 418, 426, 556, 557, 566, 687], "extend": [8, 154, 155, 688], "createindex": [9, 288, 468, 688], "mongoc_database_write_command_with_opt": [9, 14, 356, 381], "mongoc_collection_write_command_with_opt": [9, 14, 156, 278, 326], "manual": [9, 137, 139, 141, 149, 151, 156, 162, 164, 204, 205, 206, 208, 210, 227, 241, 242, 261, 276, 277, 280, 283, 284, 290, 291, 295, 296, 298, 299, 303, 304, 315, 316, 320, 328, 329, 332, 338, 349, 355, 358, 360, 363, 365, 368, 374, 375, 383, 411, 468, 486, 497, 546, 660, 688], "entri": [9, 19, 137, 139, 141, 149, 151, 156, 162, 205, 210, 241, 242, 261, 276, 277, 280, 283, 284, 290, 291, 295, 296, 298, 303, 315, 316, 320, 328, 329, 332, 355, 358, 360, 363, 365, 368, 374, 375, 383, 546], "detail": [9, 13, 18, 33, 148, 149, 150, 151, 158, 159, 265, 282, 284, 345, 385, 439, 451, 472, 496, 512, 660, 687, 688], "commitquorum": 9, "less": [9, 21, 503, 509, 660, 687], "advers": 9, "stdlib": [9, 10, 241, 262, 274, 276, 353, 416, 460, 688], "index_nam": [9, 294, 295, 688], "create_index": 9, "reply_str": 9, "ascend": [9, 314], "bson_init": [9, 10, 156, 274, 284, 353, 416, 460, 468], "mongoc_collection_keys_to_index_str": [9, 14, 326, 688], "bcon_docu": [9, 688], "bson_as_json": [9, 260, 261, 262, 337, 598, 687], "exist": [10, 13, 21, 22, 156, 165, 186, 187, 198, 212, 296, 302, 303, 318, 319, 373, 397, 401, 415, 460, 648, 688], "structur": [10, 11, 13, 130, 163, 175, 226, 239, 361, 366, 381, 387, 394, 421, 438, 449, 464, 465, 467, 468, 470, 471, 474, 475, 492, 558, 563, 565, 570, 618, 665, 687], "give": [10, 12, 13, 660, 687], "iter": [10, 12, 13, 153, 154, 155, 156, 336, 337, 345, 348, 353, 365, 436, 437, 452, 456, 687], "partit": 10, "robust": 10, "robustli": 10, "print_all_docu": [10, 299], "mongoc_collection_find_with_opt": [10, 12, 13, 14, 261, 274, 299, 326, 329, 337, 347, 352, 353, 398, 410, 437, 455, 456, 511, 548, 687], "consum": [10, 474, 486], "extra": [10, 19, 119, 284, 325, 354, 386, 398, 401, 660, 688], "becom": [10, 240, 619, 660, 661], "demonstr": [10, 12, 13, 241, 260, 276, 385, 687, 688], "cap": [10, 687], "tail": 10, "oplog": 10, "ifdef": [10, 238, 270, 474, 478], "_win32": [10, 474, 478], "sleep": [10, 239, 687], "_n": 10, "endif": [10, 238, 270, 474, 478, 662], "print_bson": 10, "b": [10, 11, 219], "query_collect": 10, "last_tim": 10, "bson_assert": [10, 12, 23, 329], "bson_append_document_begin": [10, 365, 460, 687], "bson_append_timestamp": 10, "bson_append_document_end": [10, 365, 460, 687], "awaitdata": [10, 304, 346, 347, 352], "tail_collect": 10, "bson_iter_t": [10, 12, 156, 365], "mongoc_cursor_mor": [10, 14, 344, 353], "bson_iter_init_find": [10, 12, 156, 365], "bson_iter_holds_timestamp": 10, "bson_iter_timestamp": 10, "mongoc_error_serv": [10, 13, 296], "exit": [10, 18, 20, 156, 460, 687], "usag": [10, 12, 23, 416, 460], "mongo_uri": 10, "made": [10, 214, 215, 460, 554], "wall": [10, 12, 23, 461, 512, 660], "8458503739429355503": 10, "oid": [10, 22, 395, 396, 397, 399, 400, 401, 687], "5372ab0a25164be923d10d50": 10, "op": 10, "timestamp": [10, 11, 21, 156, 246, 247, 255, 275, 331, 382], "1400023818": 10, "v": [10, 468], "line": [10, 19, 262, 386, 395, 396, 397, 398, 399, 400, 401, 660, 687], "sampl": [10, 12, 19, 23, 687], "mongoc_cursor_set_max_await_time_m": [10, 14, 205, 302, 303, 343, 353, 364, 365], "repositori": [11, 688], "gdbinit": 11, "helper": [11, 12, 13, 21, 23, 220, 241, 275, 315, 319, 325, 330, 331, 374, 382, 555, 562, 687, 688], "data": [11, 12, 13, 17, 23, 27, 31, 33, 39, 40, 42, 43, 50, 53, 55, 62, 63, 64, 68, 75, 79, 84, 85, 88, 104, 105, 122, 124, 125, 152, 154, 155, 169, 170, 171, 181, 182, 193, 194, 195, 199, 239, 261, 262, 275, 331, 345, 354, 382, 409, 417, 418, 420, 440, 459, 461, 485, 487, 489, 575, 581, 619, 650, 660, 685, 687, 688], "directori": [11, 19, 119, 687, 689], "prompt": [11, 19], "haven": 11, "printbson": 11, "content": [11, 180, 281, 407, 409, 420, 427, 444, 612, 619], "prefix": [11, 212, 411, 460, 660], "0x555556cd7310": 11, "len": [11, 170, 688], "475": 11, "int32": [11, 162, 205, 210, 241, 242, 275, 276, 277, 280, 283, 284, 295, 296, 298, 303, 315, 316, 319, 331, 332, 355, 358, 363, 365, 368, 374, 375, 382, 383, 411, 413, 414, 417, 418, 652, 653], "numberint": 11, "42": [11, 12, 386, 398, 401], "int64": [11, 275, 304, 331, 382, 433, 621, 652, 653], "numberlong": 11, "3000000042": 11, "st\u0155\u00ec\u00f1g": 11, "objectid": [11, 429, 687, 689], "5a1442f3122d331c3c6757e1": 11, "utcdatetim": 11, "1511277299031": 11, "arrayofint": 11, "embeddeddocu": 11, "arrayofstr": 11, "doubl": [11, 12, 465, 486, 487], "718280": 11, "notherdoc": 11, "binari": [11, 124, 125, 165, 166, 173, 174, 176, 182, 186, 195, 198, 688], "02": 11, "3031343532333637": 11, "regex": 11, "z": [11, 12, 662], "im": 11, "javascript": 11, "jsw": 11, "scope": [11, 19, 27, 31, 33, 39, 40, 42, 43, 50, 53, 55, 62, 63, 64, 68, 75, 79, 84, 85, 88, 104, 105], "141593": 11, "718282": 11, "4294967295": 11, "script": 11, "standard": [11, 19, 284, 314, 574, 660], "y": [11, 241, 276, 662], "verbos": 11, "19": [11, 23], "inlin": [11, 12], "raw": [11, 156, 162, 241, 242, 275, 276, 280, 315, 316, 331, 332, 358, 374, 375, 382, 383], "x13": 11, "x00": 11, "x10x": 11, "x01": 11, "x10y": 11, "x02": 11, "libbson": [11, 13, 14, 17, 687, 688, 689], "symbol": [11, 298, 446, 461, 689], "pymongo": 11, "python": [11, 19], "m": [11, 261, 660], "pip": 11, "No": [11, 13, 119, 241, 304, 315, 322, 337, 374, 378, 514, 611, 619], "modul": [11, 19], "again": [11, 13, 260, 547, 598, 660], "lldbinit": 11, "lldb_bson": 11, "py": [11, 19], "correctli": [11, 653], "denable_debug_assert": 11, "ll": [12, 23], "write": [12, 13, 14, 16, 17, 20, 23, 131, 133, 134, 143, 144, 145, 147, 156, 159, 160, 161, 162, 166, 194, 201, 213, 222, 239, 241, 242, 244, 248, 260, 261, 272, 273, 277, 279, 280, 285, 286, 288, 289, 290, 291, 295, 296, 300, 301, 304, 305, 309, 310, 311, 312, 313, 315, 316, 319, 320, 321, 324, 327, 328, 329, 346, 347, 350, 355, 356, 357, 358, 360, 363, 374, 375, 380, 381, 386, 398, 401, 409, 411, 413, 414, 417, 418, 419, 420, 451, 460, 474, 512, 538, 545, 546, 547, 548, 561, 569, 571, 575, 577, 589, 590, 598, 609, 622, 637, 659, 663, 665, 666, 667, 668, 669, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 687, 688], "don": [12, 23, 238, 270, 461], "try": [12, 13, 23, 260, 435, 598, 653, 660], "meant": [12, 23, 262, 263, 557], "insert_data": [12, 23], "bulk": [12, 14, 16, 17, 23, 32, 44, 54, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 201, 276, 285, 286, 305, 311, 312, 332, 383], "enum": [12, 21, 23, 384, 473, 485, 498, 513, 514, 525, 610, 611], "ndoc": [12, 23], "bcon_doubl": [12, 23], "tag": [12, 19, 23, 499, 505, 511, 627, 660, 682], "dog": [12, 23], "cat": [12, 23], "mous": [12, 23], "lot": [12, 23, 485], "print_r": [12, 23], "array_it": 12, "val": 12, "mongoc_database_command_simpl": [12, 14, 374, 375, 381, 383, 685], "goto": [12, 23, 156, 260, 261, 262, 598, 687, 688], "bson_iter_holds_arrai": 12, "bson_iter_recurs": 12, "extract": [12, 19, 660], "bson_iter_next": 12, "bson_iter_holds_doubl": 12, "bson_iter_doubl": 12, "map": [12, 125, 126, 196, 578, 589, 590, 688], "framework": [12, 14, 16, 17], "occurr": 12, "just": [12, 460, 497, 511, 660], "emit": [12, 621, 653], "pair": [12, 512, 660, 687], "mapper": 12, "foreach": 12, "var": 12, "length": [12, 170, 219, 235, 265, 312, 411, 430, 449, 562, 592, 687], "mongoc_database_read_command_with_opt": [12, 14, 356, 381], "retryabl": [12, 159, 160, 161, 162, 205, 209, 210, 241, 275, 277, 278, 279, 280, 282, 283, 284, 298, 299, 302, 303, 304, 315, 331, 355, 356, 357, 358, 364, 365, 367, 368, 374, 382, 409, 410, 452, 453, 454, 455, 456, 581], "retri": [12, 205, 209, 210, 241, 260, 262, 275, 277, 282, 283, 284, 298, 299, 302, 303, 304, 315, 331, 355, 364, 365, 367, 368, 374, 382, 409, 410, 452, 453, 454, 455, 456, 598, 660], "undesir": 12, "map_reduce_bas": 12, "query_don": 12, "out_collection_nam": 12, "outcollect": 12, "out_collect": 12, "find_queri": 12, "construct": [12, 135, 141, 149, 151, 162, 205, 210, 213, 238, 241, 242, 270, 276, 277, 280, 283, 284, 286, 288, 290, 291, 295, 296, 298, 303, 304, 312, 313, 315, 316, 319, 320, 328, 329, 332, 355, 358, 363, 365, 368, 374, 375, 383, 386, 401, 411, 621, 622, 687, 688], "argument": [12, 13, 119, 135, 137, 139, 141, 149, 151, 160, 161, 162, 199, 220, 234, 241, 242, 245, 248, 249, 260, 262, 264, 266, 276, 279, 280, 288, 289, 290, 291, 295, 296, 300, 301, 310, 311, 312, 313, 315, 316, 317, 319, 320, 321, 325, 327, 328, 329, 330, 332, 346, 350, 351, 352, 354, 357, 358, 363, 373, 374, 375, 376, 377, 383, 386, 395, 396, 398, 399, 400, 401, 422, 440, 442, 446, 459, 490, 547, 607, 608, 609, 663, 687], "bcon_cod": 12, "doesn": [12, 265, 386, 397, 398, 401], "mongoc_database_get_collect": [12, 14, 23, 260, 262, 378, 379, 380, 381, 598], "contact": [12, 345], "immedi": [12, 119, 240, 337], "advanc": [12, 14, 16, 17, 23, 246, 247, 687], "map_reduce_advanc": 12, "read_pref": [12, 159, 160, 161, 162, 220, 241, 242, 268, 276, 277, 278, 279, 280, 282, 283, 284, 298, 299, 304, 315, 316, 323, 355, 356, 357, 358, 374, 375, 379, 411, 499, 500, 501, 502, 503, 504, 505, 506, 508, 509, 510, 511, 593, 608], "mongoc_database_command": [12, 14, 357, 381, 685], "aggreg": [12, 14, 16, 17, 146, 156, 275, 277, 286, 290, 291, 320, 328, 329, 331, 346, 347, 355, 382, 386, 548], "copyright": [12, 23], "2016": [12, 19, 23], "licens": [12, 23], "under": [12, 23], "apach": [12, 23], "complianc": [12, 23], "http": [12, 19, 23, 239, 687, 688], "www": [12, 23], "org": [12, 19, 23, 688], "law": [12, 23], "agre": [12, 23], "softwar": [12, 23], "AS": [12, 23], "basi": [12, 23, 239], "warranti": [12, 23], "OR": [12, 23], "condit": [12, 23, 662], "OF": [12, 23], "kind": [12, 23, 460], "express": [12, 19, 23, 146, 247, 255, 277, 286, 290, 291, 320, 328, 329, 355, 386, 688], "govern": [12, 23, 660], "permiss": [12, 23], "exit_cod": [12, 156, 260, 261, 262, 598], "tlocal": [12, 23], "strncmp": [12, 23], "bson_strdup": [12, 23], "bson_strdup_printf": [12, 23, 621, 622], "otherwis": [12, 20, 21, 137, 139, 141, 149, 151, 155, 159, 160, 162, 165, 166, 173, 174, 176, 186, 187, 188, 189, 198, 199, 201, 227, 240, 241, 242, 244, 252, 259, 262, 265, 276, 277, 278, 279, 280, 282, 283, 284, 290, 291, 295, 296, 298, 315, 316, 320, 321, 323, 328, 329, 332, 336, 337, 348, 355, 356, 357, 358, 363, 374, 375, 379, 383, 395, 396, 397, 398, 399, 400, 406, 407, 409, 411, 415, 417, 418, 424, 435, 441, 442, 461, 476, 481, 489, 496, 512, 544, 554, 556, 558, 566, 568, 572, 573, 575, 577, 580, 593, 615, 624, 625, 626, 627, 628, 632, 636, 637, 639, 641, 646, 647, 651, 652, 653, 654, 660, 670], "cd": [12, 19, 23, 688], "basic_aggreg": 12, "agg": 12, "000000": [12, 687], "timemilli": 12, "155": 12, "input": [12, 13, 689], "84": [12, 397, 401], "126": 12, "63": 12, "21": 12, "14": [12, 19, 397, 401], "fill": [13, 213, 244, 248, 277, 278, 290, 291, 299, 302, 303, 304, 312, 313, 328, 329, 355, 356, 365, 420, 453, 454, 455], "subsystem": [13, 474], "human": 13, "readabl": [13, 593], "mongoc_error_cli": 13, "mongoc_error_client_too_big": 13, "larger": 13, "mongoc_error_client_authent": 13, "wrong": [13, 461], "credenti": [13, 123, 194, 649, 660], "mongoc_error_client_no_acceptable_p": 13, "mongoc_error_client_in_exhaust": 13, "began": 13, "exhaust": [13, 304, 348, 660], "mongoc_error_client_session_failur": 13, "mongoc_error_client_invalid_encryption_arg": 13, "side": [13, 14, 16, 17, 34, 45, 56, 114, 115, 116, 117, 118, 119, 120, 121, 122, 124, 125, 126, 127, 135, 141, 149, 151, 153, 164, 192, 193, 195, 196, 199, 204, 227, 254, 277, 278, 290, 291, 296, 299, 302, 303, 304, 312, 313, 320, 328, 329, 335, 337, 345, 353, 354, 355, 356, 360, 363, 365, 398, 478, 611], "level": [13, 14, 16, 17, 21, 114, 115, 116, 117, 118, 119, 120, 121, 122, 124, 125, 126, 127, 164, 192, 193, 195, 196, 204, 213, 227, 244, 296, 346, 347, 360, 363, 486, 496, 548, 562, 580, 660], "mongoc_error_client_invalid_encryption_st": 13, "mongoc_error_client_invalid_load_balanc": 13, "balanc": [13, 37, 48, 59, 213, 660], "advert": 13, "mongoc_error_stream": 13, "mongoc_error_stream_name_resolut": 13, "mongoc_error_stream_socket": 13, "commun": [13, 340, 688], "mongoc_error_stream_connect": 13, "mongoc_error_protocol": 13, "mongoc_error_protocol_invalid_repli": 13, "corrupt": 13, "mongoc_error_protocol_bad_wire_vers": 13, "too": [13, 235, 304, 386, 398, 401], "old": [13, 132, 145, 299, 304, 339, 350, 395, 401, 688], "mongoc_error_cursor": 13, "mongoc_error_cursor_invalid_cursor": 13, "bad": 13, "mongoc_error_change_stream_no_resume_token": 13, "resum": [13, 154, 275, 331, 382, 485], "mongoc_change_stream_next": [13, 14, 154, 156, 275, 331, 382], "mongoc_error_queri": 13, "mongoc_error_query_failur": [13, 296], "mongoc_error_sasl": 13, "sasl": [13, 17, 19, 660], "sasl_error": 13, "mongoc_error_bson": 13, "mongoc_error_bson_invalid": 13, "overs": 13, "mongoc_collection_create_index": [13, 14, 326, 468], "mongoc_error_namespac": 13, "mongoc_error_namespace_invalid": 13, "mongoc_error_command_invalid_arg": 13, "mongoc_error_duplicate_kei": 13, "violat": 13, "mongoc_error_max_time_ms_expir": 13, "maxtimem": [13, 261, 304, 352, 391], "mongoc_error_server_selection_invalid_id": 13, "serverid": [13, 162, 205, 210, 241, 242, 276, 277, 280, 283, 284, 295, 296, 298, 303, 304, 315, 316, 319, 332, 347, 355, 358, 363, 365, 368, 374, 375, 383], "conflict": 13, "pin": [13, 257], "denot": 13, "sessionid": [13, 162, 205, 210, 241, 242, 276, 277, 280, 283, 284, 286, 288, 290, 291, 295, 296, 298, 303, 304, 312, 313, 315, 316, 319, 320, 328, 329, 332, 347, 355, 358, 363, 365, 368, 374, 375, 383, 386, 410], "mongoc_error_collect": 13, "mongoc_error_collection_insert_fail": 13, "mongoc_error_collection_update_fail": 13, "mongoc_error_collection_delete_fail": 13, "mongoc_collection_insert_bulk": [13, 14, 326], "mongoc_collection_update_on": [13, 14, 261, 320, 326, 327, 328, 687], "mongoc_collection_update_mani": [13, 14, 320, 326, 327, 329], "mongoc_collection_replace_on": [13, 14, 321, 326, 327, 329], "mongoc_collection_delete_on": [13, 14, 289, 290, 317, 326, 384, 687], "mongoc_collection_delete_mani": [13, 14, 289, 291, 317, 326, 384], "mongoc_error_gridf": 13, "mongoc_error_gridfs_chunk_miss": 13, "miss": [13, 156, 241, 315, 374], "chunk": [13, 212, 411, 413, 414, 417, 418, 426, 440, 457, 459], "mongoc_error_gridfs_corrupt": 13, "inconsist": [13, 18, 22, 563], "mongoc_error_gridfs_invalid_filenam": 13, "filenam": [13, 413, 414, 417, 418, 428, 438, 445, 449, 454, 459, 460], "mongoc_gridfs_remove_by_filenam": [13, 14, 460], "mongoc_error_gridfs_protocol_error": 13, "mongoc_gridfs_file_set_id": [13, 14, 449, 460], "mongoc_gridfs_file_sav": [13, 14, 443, 444, 445, 447, 448, 449, 460], "mongoc_error_gridfs_bucket_file_not_found": 13, "mongoc_error_gridfs_bucket_stream": 13, "mongoc_gridfs_bucket_upload_from_stream": [13, 14, 416, 418], "mongoc_error_scram": 13, "mongoc_error_scram_protocol_error": 13, "scram": [13, 17, 646], "sha": [13, 17, 646], "mongoc_error_server_select": [13, 660], "mongoc_error_server_selection_failur": 13, "prefer": [13, 15, 159, 160, 162, 213, 217, 241, 242, 244, 260, 268, 275, 277, 279, 280, 282, 284, 299, 304, 308, 315, 316, 323, 331, 350, 355, 356, 357, 358, 371, 374, 375, 379, 381, 382, 411, 460, 495, 498, 499, 500, 501, 502, 504, 505, 508, 509, 510, 511, 512, 521, 547, 593, 598, 608, 627, 628, 657, 677, 689], "suppli": [13, 118, 125, 180, 249, 271, 688], "There": [13, 15, 19, 206, 208, 460, 547, 585, 610, 687, 688], "concern": [13, 131, 133, 159, 160, 161, 162, 166, 216, 222, 241, 242, 260, 267, 272, 275, 276, 277, 279, 280, 283, 284, 285, 286, 288, 289, 290, 291, 295, 296, 298, 300, 301, 304, 307, 309, 310, 311, 312, 313, 315, 316, 319, 320, 321, 322, 324, 327, 328, 329, 331, 332, 355, 356, 357, 358, 360, 363, 374, 375, 378, 380, 381, 382, 383, 386, 398, 401, 411, 490, 492, 493, 494, 495, 496, 512, 547, 548, 598, 607, 609, 622, 626, 628, 637, 656, 659, 663, 665, 666, 668, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684], "mongoc_error_transact": 13, "mongoc_error_transaction_invalid": 13, "transact": [13, 20, 162, 205, 210, 241, 242, 245, 249, 250, 258, 259, 260, 261, 262, 263, 273, 276, 277, 280, 283, 284, 286, 288, 290, 291, 295, 296, 298, 303, 304, 312, 313, 315, 316, 319, 320, 328, 329, 332, 355, 358, 363, 365, 368, 374, 375, 383, 386, 538, 542, 544, 545, 547, 548, 598, 599, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610], "progress": [13, 131, 245, 249, 250, 259, 260, 581, 610], "commit": [13, 249, 259, 260, 262, 263, 275, 331, 382, 598, 601, 606, 610, 660], "abort": [13, 245, 250, 259, 260, 262, 386, 398, 401, 406, 546, 548, 610], "mongoc_error_client_side_encrypt": 13, "libmongocrypt": [13, 119], "librari": [13, 14, 17, 18, 117, 119, 185, 207, 662, 687, 688, 689], "decis": 13, "categori": 13, "correspond": [13, 182, 199, 205, 212, 302, 303, 364, 365, 473, 485, 513, 514, 611, 632], "perfectli": 13, "reliabl": [13, 260], "errorlabel": [13, 260, 598], "mongoc_error_has_label": [13, 14, 260, 598], "mongoc_client_session_start_transact": [13, 14, 162, 205, 210, 241, 242, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 261, 273, 276, 277, 280, 283, 284, 286, 288, 290, 291, 295, 296, 298, 303, 304, 312, 313, 315, 316, 319, 320, 328, 329, 332, 355, 358, 363, 365, 368, 374, 375, 383, 385, 386, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "leav": [13, 145, 350, 351], "state": [13, 18, 19, 158, 258, 472, 593, 594, 610], "stepdown": 13, "sequenc": [13, 20, 261, 262, 263, 273, 478, 538, 545, 661, 687], "mongoc_client_session_commit_transact": [13, 14, 245, 246, 247, 250, 251, 252, 253, 254, 255, 256, 257, 260, 261, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "whether": [13, 71, 77, 81, 244, 253, 259, 296, 385, 481, 483, 512, 516, 518, 519, 522, 660, 676], "choos": [13, 19, 145, 211, 244, 299, 350, 396, 497, 512, 660, 689], "design": [13, 122, 185, 193, 207], "flaw": 13, "origin": [13, 119, 307, 309], "cannot": [13, 21, 235, 243, 262, 311, 337, 352, 482, 548, 646, 647, 648, 649, 650, 655, 658, 688], "therefor": [13, 18, 333, 461, 474, 565, 577, 660], "tell": [13, 449, 685, 687], "24": [13, 662], "locktimeout": 13, "fix": 13, "preserv": [13, 154, 281, 359], "backward": [13, 18, 132, 145, 339, 350, 351], "maintain": [13, 274], "mongoc_client_command_with_opt": [13, 14, 159, 241, 274, 688], "mongoc_database_command_with_opt": [13, 14, 356, 374, 381], "mongoc_collection_count_with_opt": [13, 14, 283, 326], "mongoc_client_get_database_names_with_opt": [13, 14, 209, 274], "mongoc_error_api_version_legaci": [13, 236, 266], "mongoc_error_api_version_2": [13, 236, 266, 548], "mongoc_client_pool_set_error_api": [13, 14, 239, 266, 687], "basic": [14, 17, 272, 284, 324, 380, 437, 460, 478, 660], "troubleshoot": [14, 17, 687], "distinct": [14, 16, 17, 35, 46, 57, 162, 213, 241, 242, 276, 277, 280, 304, 315, 316, 332, 355, 358, 374, 375, 383, 548], "mapreduc": [14, 16, 17, 241, 242, 315, 316, 374, 375], "microsoft": [14, 16, 17, 19, 549, 550, 552], "visual": [14, 16, 17], "studio": [14, 16, 17], "aid": [14, 16, 17], "debug": [14, 16, 17, 19, 21, 689], "refer": [14, 17, 119, 123, 194, 256, 282, 284, 304, 528, 529, 531, 535, 596, 660, 687, 688], "mongoc_auto_encryption_opts_new": [14, 114, 126, 127, 688], "mongoc_auto_encryption_opts_destroi": [14, 115, 127, 688], "mongoc_auto_encryption_opts_set_keyvault_cli": [14, 20, 115, 121, 127, 688], "mongoc_auto_encryption_opts_set_keyvault_client_pool": [14, 20, 120, 127], "mongoc_auto_encryption_opts_set_keyvault_namespac": [14, 115, 127, 688], "mongoc_auto_encryption_opts_set_kms_provid": [14, 115, 127, 688], "mongoc_auto_encryption_opts_set_kms_credential_provider_callback": [14, 127, 194], "mongoc_auto_encryption_opts_set_schema_map": [14, 115, 127, 688], "mongoc_auto_encryption_opts_set_bypass_auto_encrypt": [14, 115, 127, 164, 176, 227, 688], "mongoc_auto_encryption_opts_set_extra": [14, 115, 127, 688], "mongoc_auto_encryption_opts_set_tls_opt": [14, 127], "mongoc_auto_encryption_opts_set_encrypted_fields_map": [14, 127], "mongoc_auto_encryption_opts_set_bypass_query_analysi": [14, 127, 176], "mongoc_bulk_operation_delet": [14, 147], "mongoc_bulk_operation_delete_on": [14, 147], "mongoc_bulk_operation_get_hint": [14, 131, 147], "mongoc_bulk_operation_get_write_concern": [14, 147], "mongoc_bulk_operation_insert_with_opt": [14, 134, 147], "mongoc_bulk_operation_remove_many_with_opt": [14, 128, 129, 136, 138, 139, 141, 147], "mongoc_bulk_operation_remove_one_with_opt": [14, 128, 129, 136, 137, 138, 147], "mongoc_bulk_operation_set_client_sess": [14, 147], "mongoc_bulk_operation_set_com": [14, 147], "mongoc_bulk_operation_set_hint": [14, 147], "mongoc_bulk_operation_set_let": [14, 147], "mongoc_bulk_operation_upd": [14, 147, 150, 285, 286], "mongoc_bulk_operation_update_on": [14, 147], "mongoc_client_watch": [14, 156, 274, 331, 382], "mongoc_database_watch": [14, 156, 275, 331, 381], "mongoc_collection_watch": [14, 156, 275, 382], "mongoc_change_stream_get_resume_token": [14, 156, 275, 331, 382], "mongoc_change_stream_error_docu": [14, 155, 156, 275, 331, 382], "mongoc_change_stream_destroi": [14, 156, 275, 331, 382], "mongoc_client_encryption_new": [14, 192, 193, 195, 197, 204, 688], "mongoc_client_encryption_destroi": [14, 189, 204, 688], "mongoc_client_encryption_create_datakei": [14, 172, 174, 204, 688], "mongoc_client_encryption_rewrap_many_datakei": [14, 201, 203, 204], "mongoc_client_encryption_delete_kei": [14, 204], "mongoc_client_encryption_get_crypt_shared_vers": [14, 204, 207], "mongoc_client_encryption_get_kei": [14, 204], "mongoc_client_encryption_add_key_alt_nam": [14, 204], "mongoc_client_encryption_remove_key_alt_nam": [14, 204], "mongoc_client_encryption_get_key_by_alt_nam": [14, 204], "mongoc_client_encryption_encrypt": [14, 166, 173, 184, 204, 688], "mongoc_client_decryption_decrypt": [14, 176, 204], "mongoc_client_encryption_datakey_opts_new": [14, 167, 172, 688], "mongoc_client_encryption_datakey_opts_destroi": [14, 168, 172, 688], "mongoc_client_encryption_datakey_opts_set_masterkei": [14, 172], "mongoc_client_encryption_datakey_opts_set_keyaltnam": [14, 172, 181, 688], "mongoc_client_encryption_datakey_opts_set_keymateri": [14, 172], "mongoc_client_encryption_rewrap_many_datakey_result_new": [14, 200, 203], "mongoc_client_encryption_rewrap_many_datakey_result_destroi": [14, 202, 203], "mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result": [14, 203], "mongoc_client_encryption_encrypt_opts_new": [14, 177, 184, 688], "mongoc_client_encryption_encrypt_opts_destroi": [14, 178, 184, 688], "mongoc_client_encryption_encrypt_opts_set_keyid": [14, 181, 184, 688], "mongoc_client_encryption_encrypt_opts_set_keyaltnam": [14, 169, 182, 184, 688], "mongoc_client_encryption_encrypt_opts_set_algorithm": [14, 180, 183, 184, 688], "mongoc_client_encryption_encrypt_opts_set_contention_factor": [14, 184], "mongoc_client_encryption_encrypt_opts_set_query_typ": [14, 184], "mongoc_client_encryption_opts_new": [14, 190, 196, 197, 688], "mongoc_client_encryption_opts_destroi": [14, 191, 197, 688], "mongoc_client_encryption_opts_set_keyvault_cli": [14, 20, 197, 204, 688], "mongoc_client_encryption_opts_set_keyvault_namespac": [14, 166, 197, 688], "mongoc_client_encryption_opts_set_kms_credential_provider_callback": [14, 123, 197], "mongoc_client_encryption_opts_set_kms_provid": [14, 197, 688], "mongoc_client_encryption_opts_set_tls_opt": [14, 197], "mongoc_client_pool_destroi": [14, 20, 230, 231, 239, 687], "mongoc_client_pool_enable_auto_encrypt": [14, 20, 121, 164, 166, 204, 239], "mongoc_client_pool_max_s": [14, 239], "mongoc_client_pool_min_s": [14, 239], "mongoc_client_pool_new_with_error": [14, 230, 239], "mongoc_client_pool_set_appnam": [14, 239], "mongoc_client_pool_set_server_api": [14, 239], "mongoc_client_pool_try_pop": [14, 238, 239], "mongoc_client_session_in_transact": [14, 261, 544], "mongoc_client_session_get_transaction_st": [14, 261], "mongoc_client_session_abort_transact": [14, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 261, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_client_session_advance_cluster_tim": [14, 245, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 261, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_client_session_advance_operation_tim": [14, 245, 246, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 261, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_client_session_with_transact": [14, 261, 263], "mongoc_client_session_append": [14, 162, 205, 210, 241, 242, 260, 261, 262, 276, 277, 280, 283, 284, 286, 288, 290, 291, 295, 296, 298, 303, 304, 312, 313, 315, 316, 319, 320, 328, 329, 332, 355, 358, 363, 365, 368, 374, 375, 383, 386, 546, 548, 598], "mongoc_client_session_get_cli": [14, 245, 246, 247, 249, 250, 252, 253, 254, 255, 256, 257, 260, 261, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_client_session_get_cluster_tim": [14, 245, 246, 247, 249, 250, 251, 253, 254, 255, 256, 257, 260, 261, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_client_session_get_dirti": [14, 261], "mongoc_client_session_get_operation_tim": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 256, 257, 260, 261, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_client_session_get_opt": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 257, 260, 261, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_client_session_get_lsid": [14, 245, 246, 247, 249, 250, 251, 252, 253, 255, 256, 257, 260, 261, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_client_session_get_server_id": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 260, 261, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_client_session_destroi": [14, 20, 245, 246, 247, 249, 251, 252, 253, 254, 255, 256, 257, 260, 261, 262, 273, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_client_command": [14, 160, 274, 685], "mongoc_client_command_simple_with_server_id": [14, 274], "mongoc_client_enable_auto_encrypt": [14, 20, 115, 116, 117, 118, 119, 120, 122, 124, 125, 126, 166, 173, 176, 204, 227, 274, 688], "mongoc_client_find_databases_with_opt": [14, 274, 349, 351, 352], "mongoc_client_get_crypt_shared_vers": [14, 185, 274], "mongoc_client_get_database_nam": [14, 274], "mongoc_client_get_default_databas": [14, 274, 649], "mongoc_client_get_gridf": [14, 274, 460], "mongoc_client_get_handshake_descript": [14, 274], "mongoc_client_get_max_bson_s": [14, 274], "mongoc_client_get_max_message_s": [14, 274], "mongoc_client_get_read_concern": [14, 274, 494], "mongoc_client_get_read_pref": [14, 274], "mongoc_client_get_server_descript": [14, 213, 274, 528, 531, 535, 537], "mongoc_client_get_server_statu": [14, 274], "mongoc_client_get_uri": [14, 274], "mongoc_client_get_write_concern": [14, 274, 674], "mongoc_client_new_from_uri_with_error": [14, 224, 274], "mongoc_client_read_command_with_opt": [14, 159, 162, 220, 242, 274, 276, 277, 280, 283, 284, 298, 315, 316, 325, 330, 332, 355, 358, 374, 375, 383, 411, 490], "mongoc_client_read_write_command_with_opt": [14, 159, 274], "mongoc_client_reset": [14, 274], "mongoc_client_select_serv": [14, 162, 205, 210, 213, 241, 242, 274, 276, 277, 280, 283, 284, 295, 296, 298, 303, 304, 315, 316, 319, 332, 355, 358, 363, 365, 368, 374, 375, 383], "mongoc_client_set_appnam": [14, 235, 274, 687], "mongoc_client_set_read_concern": [14, 274, 494], "mongoc_client_set_read_pref": [14, 274], "mongoc_client_set_server_api": [14, 274], "mongoc_client_set_stream_initi": [14, 274], "mongoc_client_set_write_concern": [14, 274, 674], "mongoc_client_start_sess": [14, 20, 143, 162, 205, 210, 241, 242, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 261, 262, 274, 276, 277, 280, 283, 284, 286, 288, 290, 291, 295, 296, 298, 303, 304, 312, 313, 315, 316, 319, 320, 328, 329, 332, 355, 358, 363, 365, 368, 374, 375, 383, 386, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_client_write_command_with_opt": [14, 159, 162, 241, 242, 248, 274, 277, 280, 286, 288, 290, 291, 295, 296, 312, 313, 316, 319, 320, 328, 329, 332, 355, 358, 363, 375, 383, 386, 411, 663], "mongoc_handshake_data_append": [14, 274], "mongoc_collection_command": [14, 279, 326, 685], "mongoc_collection_command_simpl": [14, 23, 299, 304, 315, 316, 326, 332, 685, 687], "mongoc_collection_command_with_opt": [14, 278, 315, 326], "mongoc_collection_copi": [14, 326], "mongoc_collection_count_docu": [14, 282, 284, 298, 326], "mongoc_collection_estimated_document_count": [14, 282, 283, 284, 326], "mongoc_collection_count": [14, 283, 284, 326, 687], "mongoc_collection_create_bulk_oper": [14, 326], "mongoc_collection_create_index_with_opt": [14, 326], "mongoc_collection_delet": [14, 326], "mongoc_collection_drop_index": [14, 326, 685], "mongoc_collection_drop_index_with_opt": [14, 326], "mongoc_collection_drop_with_opt": [14, 293, 294, 326], "mongoc_collection_ensure_index": [14, 326], "mongoc_collection_find": [14, 326, 342, 351, 485], "mongoc_collection_find_and_modifi": [14, 326], "mongoc_collection_find_and_modify_with_opt": [14, 300, 326, 386, 395, 396, 397, 398, 399, 400, 401], "mongoc_collection_find_index": [14, 326], "mongoc_collection_find_indexes_with_opt": [14, 302, 326, 349, 351, 352], "mongoc_collection_get_last_error": [14, 326], "mongoc_collection_get_nam": [14, 279, 326], "mongoc_collection_get_read_concern": [14, 326], "mongoc_collection_get_read_pref": [14, 326], "mongoc_collection_get_write_concern": [14, 326], "mongoc_collection_insert": [14, 326], "mongoc_collection_read_command_with_opt": [14, 278, 326], "mongoc_collection_read_write_command_with_opt": [14, 278, 326], "mongoc_collection_remov": [14, 326], "mongoc_collection_renam": [14, 326], "mongoc_collection_rename_with_opt": [14, 318, 326], "mongoc_collection_sav": [14, 326], "mongoc_collection_set_read_concern": [14, 281, 326], "mongoc_collection_set_read_pref": [14, 281, 326], "mongoc_collection_set_write_concern": [14, 281, 326], "mongoc_collection_stat": [14, 326], "mongoc_collection_upd": [14, 326, 400], "mongoc_collection_valid": [14, 326], "mongoc_cursor_clon": [14, 353], "mongoc_cursor_curr": [14, 353], "mongoc_cursor_error_docu": [14, 153, 159, 277, 278, 299, 302, 303, 304, 336, 353, 355, 356, 365], "mongoc_cursor_get_batch_s": [14, 353], "mongoc_cursor_get_hint": [14, 353], "mongoc_cursor_get_host": [14, 353, 462], "mongoc_cursor_get_id": [14, 353], "mongoc_cursor_get_limit": [14, 353], "mongoc_cursor_get_max_await_time_m": [14, 353], "mongoc_cursor_is_al": [14, 353], "mongoc_cursor_new_from_command_repli": [14, 353], "mongoc_cursor_new_from_command_reply_with_opt": [14, 346, 353], "mongoc_cursor_set_batch_s": [14, 205, 302, 303, 352, 353, 364, 365], "mongoc_cursor_set_hint": [14, 339, 353], "mongoc_cursor_set_limit": [14, 205, 302, 303, 342, 353, 364, 365], "mongoc_database_add_us": [14, 381], "mongoc_database_aggreg": [14, 381], "mongoc_database_copi": [14, 381], "mongoc_database_drop": [14, 381], "mongoc_database_drop_with_opt": [14, 362, 381], "mongoc_database_find_collect": [14, 381], "mongoc_database_find_collections_with_opt": [14, 349, 351, 352, 364, 381], "mongoc_database_get_collection_nam": [14, 381], "mongoc_database_get_collection_names_with_opt": [14, 365, 367, 381], "mongoc_database_get_nam": [14, 211, 381], "mongoc_database_get_read_concern": [14, 381], "mongoc_database_get_read_pref": [14, 381], "mongoc_database_get_write_concern": [14, 381], "mongoc_database_has_collect": [14, 381], "mongoc_database_read_write_command_with_opt": [14, 356, 381], "mongoc_database_remove_all_us": [14, 381], "mongoc_database_remove_us": [14, 381], "mongoc_database_set_read_concern": [14, 359, 381], "mongoc_database_set_read_pref": [14, 359, 381], "mongoc_database_set_write_concern": [14, 359, 381], "mongoc_find_and_modify_opts_append": [14, 301, 398, 401], "mongoc_find_and_modify_opts_destroi": [14, 386, 394, 395, 396, 397, 398, 399, 400, 401], "mongoc_find_and_modify_opts_get_bypass_document_valid": [14, 401], "mongoc_find_and_modify_opts_get_field": [14, 401], "mongoc_find_and_modify_opts_get_flag": [14, 401], "mongoc_find_and_modify_opts_get_max_time_m": [14, 401], "mongoc_find_and_modify_opts_get_sort": [14, 401], "mongoc_find_and_modify_opts_get_upd": [14, 401], "mongoc_find_and_modify_opts_new": [14, 386, 395, 396, 397, 398, 399, 400, 401], "mongoc_find_and_modify_opts_set_bypass_document_valid": [14, 388, 401], "mongoc_find_and_modify_opts_set_field": [14, 389, 401], "mongoc_find_and_modify_opts_set_flag": [14, 390, 396, 400, 401], "mongoc_find_and_modify_opts_set_max_time_m": [14, 386, 391, 401], "mongoc_find_and_modify_opts_set_sort": [14, 392, 401], "mongoc_find_and_modify_opts_set_upd": [14, 386, 393, 395, 396, 397, 398, 399, 401], "mongoc_gridfs_file_list_destroi": [14, 437, 452, 456, 460], "mongoc_gridfs_file_list_error": [14, 437], "mongoc_gridfs_file_list_next": [14, 437, 460], "mongoc_gridfs_file_destroi": [14, 419, 420, 436, 437, 449, 453, 454, 455, 460], "mongoc_gridfs_file_error": [14, 439, 441, 449, 451, 460], "mongoc_gridfs_file_get_alias": [14, 449], "mongoc_gridfs_file_get_chunk_s": [14, 449], "mongoc_gridfs_file_get_content_typ": [14, 449], "mongoc_gridfs_file_get_filenam": [14, 449, 460], "mongoc_gridfs_file_get_id": [14, 449], "mongoc_gridfs_file_get_length": [14, 449], "mongoc_gridfs_file_get_md5": [14, 449], "mongoc_gridfs_file_get_metadata": [14, 449], "mongoc_gridfs_file_get_upload_d": [14, 449], "mongoc_gridfs_file_readv": [14, 449], "mongoc_gridfs_file_remov": [14, 449], "mongoc_gridfs_file_seek": [14, 449], "mongoc_gridfs_file_set_alias": [14, 449], "mongoc_gridfs_file_set_content_typ": [14, 449], "mongoc_gridfs_file_set_filenam": [14, 449], "mongoc_gridfs_file_set_md5": [14, 449], "mongoc_gridfs_file_set_metadata": [14, 449], "mongoc_gridfs_file_tel": [14, 449], "mongoc_gridfs_file_writev": [14, 419, 449], "mongoc_stream_gridfs_new": [14, 449, 460], "mongoc_gridfs_bucket_abort_upload": [14, 416], "mongoc_gridfs_bucket_delete_by_id": [14, 416], "mongoc_gridfs_bucket_destroi": [14, 411, 416], "mongoc_gridfs_bucket_download_to_stream": [14, 416], "mongoc_gridfs_bucket_find": [14, 416], "mongoc_gridfs_bucket_new": [14, 416], "mongoc_gridfs_bucket_open_download_stream": [14, 415, 416], "mongoc_gridfs_bucket_open_upload_stream": [14, 406, 414, 415, 416], "mongoc_gridfs_bucket_open_upload_stream_with_id": [14, 406, 413, 415, 416], "mongoc_gridfs_bucket_stream_error": [14, 412, 413, 414, 416], "mongoc_gridfs_bucket_upload_from_stream_with_id": [14, 416, 417], "mongoc_gridfs_create_fil": [14, 460, 577], "mongoc_gridfs_create_file_from_stream": [14, 460, 577], "mongoc_gridfs_destroi": [14, 212, 460], "mongoc_gridfs_drop": [14, 460], "mongoc_gridfs_find": [14, 437, 460], "mongoc_gridfs_find_on": [14, 460], "mongoc_gridfs_find_one_by_filenam": [14, 460], "mongoc_gridfs_find_one_with_opt": [14, 453, 460], "mongoc_gridfs_find_with_opt": [14, 452, 460], "mongoc_gridfs_get_chunk": [14, 460], "mongoc_gridfs_get_fil": [14, 460], "mongoc_index_opt_geo_get_default": [14, 465], "mongoc_index_opt_geo_init": [14, 465, 468], "mongoc_index_opt_get_default": [14, 468], "mongoc_index_opt_init": [14, 468], "mongoc_index_opt_wt_get_default": [14, 471], "mongoc_index_opt_wt_init": [14, 471], "mongoc_matcher_destroi": [14, 477, 478], "mongoc_matcher_match": [14, 478], "mongoc_matcher_new": [14, 476, 478], "mongoc_optional_copi": [14, 483], "mongoc_optional_init": [14, 483], "mongoc_optional_is_set": [14, 482, 483], "mongoc_optional_set_valu": [14, 483], "mongoc_optional_valu": [14, 483], "mongoc_rand_add": [14, 486], "mongoc_rand_se": [14, 486], "mongoc_rand_statu": [14, 486], "mongoc_read_concern_append": [14, 162, 241, 242, 276, 277, 280, 283, 284, 298, 304, 315, 316, 355, 358, 368, 374, 375, 411, 497], "mongoc_read_concern_copi": [14, 497], "mongoc_read_concern_destroi": [14, 241, 260, 276, 368, 491, 495, 497, 598], "mongoc_read_concern_get_level": [14, 497], "mongoc_read_concern_is_default": [14, 497], "mongoc_read_concern_new": [14, 241, 260, 276, 304, 368, 497, 598], "mongoc_read_concern_set_level": [14, 241, 260, 276, 304, 368, 497, 598], "mongoc_read_prefs_add_tag": [14, 512], "mongoc_read_prefs_copi": [14, 512], "mongoc_read_prefs_get_hedg": [14, 512], "mongoc_read_prefs_get_max_staleness_second": [14, 512], "mongoc_read_prefs_get_mod": [14, 512], "mongoc_read_prefs_get_tag": [14, 512], "mongoc_read_prefs_is_valid": [14, 512], "mongoc_read_prefs_set_hedg": [14, 512], "mongoc_read_prefs_set_max_staleness_second": [14, 512], "mongoc_read_prefs_set_mod": [14, 512], "mongoc_read_prefs_set_tag": [14, 512], "mongoc_server_api_copi": [14, 523], "mongoc_server_api_deprecation_error": [14, 523], "mongoc_server_api_destroi": [14, 515, 521, 523], "mongoc_server_api_get_deprecation_error": [14, 523], "mongoc_server_api_get_strict": [14, 523], "mongoc_server_api_get_vers": [14, 523], "mongoc_server_api_new": [14, 523], "mongoc_server_api_strict": [14, 298, 523], "mongoc_server_api_version_from_str": [14, 525], "mongoc_server_api_version_to_str": [14, 525], "mongoc_server_description_destroi": [14, 213, 218, 244, 533, 535], "mongoc_server_description_hello_respons": [14, 531, 535], "mongoc_server_description_id": [14, 162, 205, 210, 241, 242, 276, 277, 280, 283, 284, 295, 296, 298, 303, 304, 315, 316, 319, 332, 355, 358, 363, 365, 368, 374, 375, 383, 535], "mongoc_server_description_ismast": [14, 535], "mongoc_server_description_last_update_tim": [14, 535], "mongoc_server_description_new_copi": [14, 535], "mongoc_server_description_round_trip_tim": [14, 535], "mongoc_session_opts_new": [14, 20, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 261, 273, 538, 539, 540, 541, 542, 543, 544, 546, 547, 548, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_session_opts_get_causal_consist": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 538, 539, 540, 542, 543, 544, 545, 546, 547, 548, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_session_opts_set_causal_consist": [14, 20, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 261, 273, 538, 539, 540, 541, 542, 543, 544, 545, 547, 548, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_session_opts_get_default_transaction_opt": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 538, 539, 540, 541, 543, 544, 545, 546, 547, 548, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_session_opts_set_default_transaction_opt": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 538, 539, 540, 541, 542, 543, 544, 545, 546, 548, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_session_opts_get_snapshot": [14, 538], "mongoc_session_opts_set_snapshot": [14, 538, 543, 546], "mongoc_session_opts_get_transaction_opt": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 538, 539, 540, 541, 542, 543, 545, 546, 547, 548, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_session_opts_clon": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 538, 540, 541, 542, 543, 544, 545, 546, 547, 548, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_session_opts_destroi": [14, 20, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 261, 273, 538, 539, 541, 542, 543, 544, 545, 546, 547, 548, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_socket_accept": [14, 563], "mongoc_socket_bind": [14, 563], "mongoc_socket_clos": [14, 563], "mongoc_socket_connect": [14, 563], "mongoc_socket_destroi": [14, 549, 558, 563], "mongoc_socket_errno": [14, 551, 563], "mongoc_socket_getnameinfo": [14, 563], "mongoc_socket_getsocknam": [14, 563], "mongoc_socket_listen": [14, 563], "mongoc_socket_new": [14, 563], "mongoc_socket_recv": [14, 563], "mongoc_socket_send": [14, 563], "mongoc_socket_sendv": [14, 563], "mongoc_socket_setsockopt": [14, 563], "mongoc_ssl_opt_get_default": [14, 565], "mongoc_stream_file_get_fd": [14, 574], "mongoc_stream_file_new": [14, 409, 417, 418, 574], "mongoc_stream_file_new_for_path": [14, 409, 416, 417, 418, 460, 574], "mongoc_stream_socket_get_socket": [14, 584], "mongoc_stream_socket_new": [14, 584], "mongoc_stream_buffered_new": [14, 567, 569, 585, 588], "mongoc_stream_clos": [14, 409, 413, 414, 416, 417, 418, 585], "mongoc_stream_cork": [14, 585, 588], "mongoc_stream_destroi": [14, 416, 460, 566, 567, 568, 572, 573, 583, 585], "mongoc_stream_flush": [14, 585], "mongoc_stream_get_base_stream": [14, 585], "mongoc_stream_read": [14, 417, 418, 579, 585, 589], "mongoc_stream_readv": [14, 460, 577, 578, 585, 589], "mongoc_stream_setsockopt": [14, 585], "mongoc_stream_should_retri": [14, 585], "mongoc_stream_timed_out": [14, 585], "mongoc_stream_uncork": [14, 569, 585], "mongoc_stream_writ": [14, 578, 579, 585], "mongoc_stream_writev": [14, 577, 578, 579, 585, 589], "mongoc_topology_description_destroi": [14, 595, 596], "mongoc_topology_description_new_copi": [14, 596], "mongoc_transaction_opts_new": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 600, 601, 602, 603, 604, 606, 607, 608, 609], "mongoc_transaction_opts_get_read_concern": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 600, 601, 603, 604, 605, 606, 607, 608, 609], "mongoc_transaction_opts_set_read_concern": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 600, 601, 602, 603, 604, 605, 606, 608, 609], "mongoc_transaction_opts_get_write_concern": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 600, 601, 602, 603, 605, 606, 607, 608, 609], "mongoc_transaction_opts_set_write_concern": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608], "mongoc_transaction_opts_get_read_pref": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 600, 601, 602, 604, 605, 606, 607, 608, 609], "mongoc_transaction_opts_set_read_pref": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 609], "mongoc_transaction_opts_get_max_commit_time_m": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 600, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_transaction_opts_set_max_commit_time_m": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 600, 601, 602, 603, 604, 605, 607, 608, 609], "mongoc_transaction_opts_clon": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_transaction_opts_destroi": [14, 245, 246, 247, 249, 250, 251, 252, 253, 254, 255, 256, 257, 260, 273, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 598, 599, 601, 602, 603, 604, 605, 606, 607, 608, 609], "mongoc_uri_copi": [14, 660], "mongoc_uri_get_compressor": [14, 660], "mongoc_uri_get_databas": [14, 660], "mongoc_uri_get_host": [14, 462, 660], "mongoc_uri_get_option_as_bool": [14, 660], "mongoc_uri_get_option_as_int32": [14, 622, 660], "mongoc_uri_get_option_as_int64": [14, 621, 660], "mongoc_uri_get_option_as_utf8": [14, 660], "mongoc_uri_get_opt": [14, 660], "mongoc_uri_get_password": [14, 660], "mongoc_uri_get_read_concern": [14, 660], "mongoc_uri_get_read_pref": [14, 660], "mongoc_uri_get_read_prefs_t": [14, 627, 660], "mongoc_uri_get_replica_set": [14, 660], "mongoc_uri_get_servic": [14, 660], "mongoc_uri_get_ssl": [14, 660], "mongoc_uri_get_str": [14, 660], "mongoc_uri_get_srv_hostnam": [14, 630, 660], "mongoc_uri_get_srv_service_nam": [14, 660], "mongoc_uri_get_tl": [14, 633, 660], "mongoc_uri_get_usernam": [14, 660], "mongoc_uri_get_write_concern": [14, 660], "mongoc_uri_has_opt": [14, 660], "mongoc_uri_new_for_host_port": [14, 660], "mongoc_uri_option_is_bool": [14, 660], "mongoc_uri_option_is_int32": [14, 644, 660], "mongoc_uri_option_is_int64": [14, 643, 653, 660], "mongoc_uri_option_is_utf8": [14, 660], "mongoc_uri_set_compressor": [14, 660], "mongoc_uri_set_databas": [14, 660], "mongoc_uri_set_option_as_int32": [14, 653, 660], "mongoc_uri_set_option_as_int64": [14, 652, 660], "mongoc_uri_set_password": [14, 660], "mongoc_uri_set_read_concern": [14, 660], "mongoc_uri_set_read_prefs_t": [14, 660], "mongoc_uri_set_usernam": [14, 660], "mongoc_uri_set_write_concern": [14, 660], "mongoc_uri_unescap": [14, 660], "mongoc_check_vers": [14, 662], "mongoc_get_major_vers": [14, 662], "mongoc_get_micro_vers": [14, 662], "mongoc_get_minor_vers": [14, 662], "mongoc_get_vers": [14, 662], "mongoc_write_concern_copi": [14, 685], "mongoc_write_concern_get_fsync": [14, 685], "mongoc_write_concern_get_journ": [14, 685], "mongoc_write_concern_get_w": [14, 685], "mongoc_write_concern_get_wmajor": [14, 685], "mongoc_write_concern_get_wtag": [14, 685], "mongoc_write_concern_get_wtimeout": [14, 683, 685], "mongoc_write_concern_get_wtimeout_int64": [14, 671, 684, 685], "mongoc_write_concern_is_acknowledg": [14, 685], "mongoc_write_concern_is_default": [14, 685], "mongoc_write_concern_is_valid": [14, 685], "mongoc_write_concern_journal_is_set": [14, 685], "mongoc_write_concern_set_fsync": [14, 685], "mongoc_write_concern_set_journ": [14, 678, 685], "mongoc_write_concern_set_wmajor": [14, 156, 241, 260, 276, 598, 685, 688], "mongoc_write_concern_set_wtag": [14, 685], "mongoc_write_concern_set_wtimeout": [14, 671, 685], "apm": [14, 17], "mongoc_apm_command_failed_get_dur": [14, 38], "mongoc_apm_command_failed_get_host": [14, 38], "mongoc_apm_command_failed_get_operation_id": [14, 38], "mongoc_apm_command_failed_get_repli": [14, 38], "mongoc_apm_command_failed_get_request_id": [14, 38], "mongoc_apm_command_failed_get_server_id": [14, 35, 38], "mongoc_apm_command_failed_get_service_id": [14, 38], "mongoc_apm_command_failed_get_server_connection_id": [14, 38], "mongoc_apm_command_started_get_database_nam": [14, 49], "mongoc_apm_command_started_get_operation_id": [14, 49], "mongoc_apm_command_started_get_request_id": [14, 49], "mongoc_apm_command_started_get_server_id": [14, 46, 49], "mongoc_apm_command_started_get_service_id": [14, 49], "mongoc_apm_command_started_get_server_connection_id": [14, 49], "mongoc_apm_command_succeeded_get_dur": [14, 60], "mongoc_apm_command_succeeded_get_host": [14, 60], "mongoc_apm_command_succeeded_get_operation_id": [14, 60], "mongoc_apm_command_succeeded_get_request_id": [14, 60], "mongoc_apm_command_succeeded_get_server_id": [14, 57, 60], "mongoc_apm_command_succeeded_get_service_id": [14, 60], "mongoc_apm_command_succeeded_get_server_connection_id": [14, 60], "mongoc_apm_server_changed_get_topology_id": [14, 66], "mongoc_apm_server_closed_get_topology_id": [14, 70], "mongoc_apm_server_heartbeat_failed_get_await": [14, 76], "mongoc_apm_server_heartbeat_failed_get_dur": [14, 76], "mongoc_apm_server_heartbeat_started_get_await": [14, 80], "mongoc_apm_server_heartbeat_succeeded_get_await": [14, 86], "mongoc_apm_server_heartbeat_succeeded_get_dur": [14, 86], "mongoc_apm_server_opening_get_topology_id": [14, 90], "mongoc_apm_topology_changed_get_topology_id": [14, 107], "mongoc_apm_topology_closed_get_topology_id": [14, 110], "mongoc_apm_topology_opening_get_topology_id": [14, 113], "older": [15, 296, 304], "consist": [15, 20, 146, 246, 247, 261, 262, 273, 277, 286, 290, 291, 320, 328, 329, 355, 386, 506, 538, 541, 545, 546, 548, 648, 680], "upload": [15, 406, 416, 417, 418, 433], "download": [15, 19, 409, 412, 416, 689], "straightforward": 15, "upgrad": [15, 298], "seek": [15, 449], "But": [15, 20, 660], "encourag": 15, "cross": 17, "packag": [17, 687, 688], "integr": [17, 21, 460], "crud": [17, 276, 326, 332, 383], "256": 17, "cr": 17, "gssapi": [17, 619, 641, 646, 650], "kerbero": [17, 19, 660, 689], "plain": [17, 444], "509": 17, "aw": [17, 124, 126, 166, 171, 195, 196], "iam": 17, "checklist": 17, "counter": [17, 18, 158, 243, 472], "submit": [17, 147, 300], "bug": [17, 22, 687], "exactli": [18, 158, 472, 660], "global": [18, 158, 268, 285, 323, 379, 472, 512], "primit": [18, 158, 472, 486], "mongoc_log_set_handl": [18, 21, 158, 472], "would": [18, 19, 158, 198, 299, 442, 472, 496, 660, 661, 668, 678, 679, 680, 681, 682, 683, 684], "handler": [18, 158, 472], "reiniti": [18, 158, 472], "problemat": 18, "situat": [18, 512, 660], "shutdown": [18, 551], "across": 18, "meanwhil": 18, "portabl": [18, 474, 549, 550, 552, 563], "yourself": 18, "denable_automatic_init_and_cleanup": [18, 19, 688], "varieti": 19, "archlinux": 19, "debian": 19, "2008": 19, "rhel": 19, "7": [19, 462, 485, 660, 687], "8": [19, 275, 298, 331, 382, 411, 445, 454, 459, 461, 471, 646, 647, 648, 649, 655, 658, 661, 662], "ubuntu": 19, "16": [19, 397, 401, 662, 687], "04": [19, 125], "18": 19, "clang": [19, 461], "2015": 19, "2017": 19, "x86": 19, "x86_64": 19, "arm": 19, "aarch64": 19, "power8": 19, "ppc64le": 19, "zseri": 19, "s390x": 19, "being": [19, 199, 441, 451, 461, 660], "suffici": [19, 486], "apt": 19, "fedora": 19, "dnf": 19, "red": [19, 687], "hat": 19, "cento": 19, "epel": 19, "fedoraproject": 19, "yum": 19, "homebrew": 19, "brew": 19, "app": 19, "openssl": 19, "redhat": 19, "sudo": 19, "devel": 19, "dev": 19, "libsasl2": 19, "freebsd": 19, "su": 19, "adjust": [19, 442], "xcode": 19, "util": [19, 204], "accord": [19, 162, 244, 280, 358], "vista": 19, "beyond": [19, 348, 660], "github": 19, "i686": 19, "minggw": 19, "msys64": 19, "ming64": 19, "ex": [19, 687], "msys2_shel": 19, "pacman": 19, "noconfirm": 19, "syu": 19, "tar": 19, "mingw64": 19, "artifact": 19, "throughout": 19, "assum": [19, 275, 331, 382, 687], "subsequ": [19, 229, 246, 247, 275, 331, 382, 548], "section": [19, 618, 687], "snippet": [19, 687], "wget": 19, "gz": 19, "xzf": 19, "mkdir": [19, 23, 688], "dcmake_build_typ": 19, "l": 19, "consider": 19, "amount": [19, 156, 275, 304, 331, 352, 382, 442], "written": [19, 299, 413, 414, 451, 589, 590, 669], "home": 19, "conclud": 19, "anyth": [19, 397, 497], "denable_mongoc": [19, 688], "though": [19, 288, 395, 401, 578, 589, 590], "fewer": 19, "item": [19, 579, 590], "branch": 19, "particular": [19, 277, 381, 460, 486, 687], "checkout": 19, "calc_release_vers": 19, "version_curr": 19, "especi": [19, 21], "cygwin": 19, "certainti": 19, "reli": [19, 118, 125, 299, 660, 686, 688], "toolchain": 19, "happen": [19, 262, 275, 331, 382, 473, 477], "bit": [19, 426, 430, 450, 486, 621, 643, 644, 653, 671, 672, 689], "freeli": 19, "win64": 19, "dcmake_install_prefix": 19, "dcmake_prefix_path": 19, "lh": 19, "target": [19, 162, 205, 210, 241, 242, 276, 277, 280, 283, 284, 295, 296, 298, 300, 301, 303, 304, 315, 316, 319, 332, 355, 358, 363, 365, 368, 374, 375, 383, 512, 573, 687, 688], "fine": 19, "grain": 19, "ninja": 19, "makefil": 19, "mode": [19, 159, 160, 278, 279, 298, 356, 357, 498, 504, 507, 510, 573, 627, 660], "relwithdebinfo": 19, "info": [19, 21, 30, 74], "cmake_install_prefix": [19, 689], "2019": 19, "examin": 19, "glob": 19, "vcxproj": 19, "sphinx": 19, "denable_man_pag": 19, "denable_html_doc": 19, "invok": 19, "usr": [19, 687], "sh": 19, "bat": 19, "exact": 19, "approach": 19, "readm": 19, "assist": 19, "emb": 19, "wish": [19, 348, 688], "collis": 19, "bson_output_basenam": 19, "mongoc_output_basenam": 19, "dbson_output_basenam": 19, "custom_bson": 19, "dmongoc_output_basenam": 19, "custom_mongoc": 19, "libcustom_bson": 19, "libcustom_mongoc": 19, "could": [19, 21, 125, 219, 260, 261, 262, 377, 453, 460, 477, 598, 688], "place": [19, 299, 646, 647, 651, 652, 653, 654, 660, 687], "lcustom_mongoc": 19, "lcustom_bson": 19, "linker": [19, 689], "possibli": [19, 271], "creation": [20, 192, 288, 460, 463, 466, 469, 486], "destruct": 20, "acquir": [20, 261, 273, 538, 545], "finish": [20, 345, 687], "destroi": [20, 101, 110, 114, 115, 130, 131, 147, 152, 229, 234, 243, 261, 262, 264, 273, 288, 292, 330, 346, 347, 408, 421, 423, 535, 538, 545, 596, 619, 687], "lifetim": [20, 154, 155, 185, 207, 234, 252, 254, 256, 264, 271, 348, 542, 577, 602, 603, 604], "revers": [20, 687], "sole": [20, 31, 43, 53, 62, 68, 75, 79, 84, 88], "outliv": [20, 120, 121, 192, 204, 416], "came": [20, 71, 77, 81, 261, 273, 538, 545], "causal": [20, 246, 247, 261, 262, 273, 538, 541, 545, 546, 548, 680], "unacknowledg": [20, 143, 201, 248, 261, 273, 301, 538, 545, 546, 673, 680, 685], "prohibit": [20, 144, 146, 162, 171, 241, 242, 261, 273, 276, 277, 280, 304, 315, 316, 332, 355, 358, 374, 375, 383, 538, 545], "refresh": [20, 261, 273, 538, 545], "vault": [20, 120, 121, 122, 166, 171, 174, 186, 187, 188, 193, 199, 204, 688], "abstract": [21, 147, 353, 381, 401, 437, 449, 460, 474, 478, 497, 512, 563, 585, 660, 685], "mongoc_log_level_error": 21, "mongoc_log_level_crit": 21, "mongoc_log_level_warn": 21, "mongoc_log_level_messag": 21, "mongoc_log_level_info": 21, "mongoc_log_level_debug": 21, "mongoc_log_level_trac": 21, "mongoc_log_level_t": 21, "mongoc_error": [21, 219, 260, 262, 460, 598], "mongoc_crit": 21, "mongoc_warn": [21, 639, 648], "mongoc_messag": 21, "mongoc_info": 21, "mongoc_debug": 21, "mongoc_log_func_t": 21, "log_level": 21, "log_domain": 21, "user_data": [21, 271, 274], "log_func": 21, "mongoc_log": 21, "bson_gnuc_printf": 21, "mongoc_log_level_str": 21, "mongoc_log_default_handl": 21, "mongoc_log_trace_en": 21, "mongoc_log_trace_dis": 21, "littl": 21, "pain": 21, "undef": 21, "mongoc_log_domain": 21, "my": [21, 416], "strerror": 21, "errno": [21, 442, 550, 551, 552, 554, 556, 557, 558, 559, 560, 561, 562, 568, 569, 572, 573, 575, 578, 579, 580, 588, 589, 590], "warn": [21, 223, 260, 598, 621, 648, 653, 678, 679, 680, 681, 682, 683, 684], "critic": 21, "overrid": [21, 162, 205, 210, 238, 241, 242, 260, 270, 276, 277, 280, 283, 284, 286, 288, 290, 291, 295, 296, 298, 303, 304, 312, 313, 315, 316, 319, 320, 328, 329, 332, 355, 358, 363, 365, 368, 374, 375, 383, 386, 413, 414, 417, 418, 547, 598, 660], "mutex": [21, 239, 687], "safeti": [21, 687], "regist": [21, 234, 264, 424, 435, 502, 505, 687], "suppress": 21, "my_logg": 21, "smaller": 21, "go": 21, "intern": [21, 188, 243, 262, 265, 319, 485, 565, 619, 623, 687], "affect": [21, 267, 272], "significantli": 21, "overhead": 21, "subset": [22, 396, 558, 688], "numer": 22, "subdocu": [22, 290, 291, 313, 320, 328, 329, 687], "lt": [22, 478], "lte": [22, 401, 478], "nin": [22, 478], "ne": 22, "implement": [22, 156, 274, 276, 298, 332, 383, 416, 453, 460, 569, 575, 576, 588, 660], "mongodump": 22, "echo": 22, "world": [22, 478, 687], "writeresult": [22, 241, 276], "bye": 22, "filter": [22, 23, 149, 151, 199, 283, 299, 304, 328, 329, 364, 365, 410, 416, 455, 456, 460, 478, 511, 548, 593], "bsondump": 22, "537afac9a70e5b4d556153bc": 22, "db2": [23, 660], "dbpath": 23, "common_oper": 23, "executionstat": 23, "allplansexecut": 23, "executionstag": 23, "direct": [23, 275, 331, 382, 512, 688], "docsexamin": 23, "76": 23, "executiontimemillisestim": 23, "eq": [23, 478], "iseof": 23, "nreturn": 23, "needtim": 23, "58": 23, "needyield": 23, "restorest": 23, "savest": 23, "stage": [23, 156, 277, 355], "collscan": 23, "78": 23, "executionsuccess": 23, "executiontimemilli": 23, "totaldocsexamin": 23, "totalkeysexamin": 23, "queryplann": 23, "indexfilterset": 23, "namespac": [23, 118, 125, 212, 411, 688], "parsedqueri": 23, "plannervers": 23, "rejectedplan": 23, "winningplan": 23, "serverinfo": 23, "gitvers": 23, "05552b562c7a0b3143a729aaa0838e558dc49b25": 23, "macbook": 23, "pro": 23, "57": [23, 397, 401], "noth": [24, 130, 163, 167, 175, 177, 190, 200, 250, 292, 335, 361, 387, 408, 421, 423, 434, 492, 501, 517, 527, 540, 553, 570, 591, 600, 613, 665], "introduct": [24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 234, 264, 535, 593, 594, 596, 687], "bson_gnuc_warn_unused_result": [25, 115, 159, 168, 178, 185, 189, 191, 201, 202, 205, 206, 207, 208, 209, 210, 211, 212, 213, 218, 219, 223, 224, 225, 230, 231, 232, 240, 244, 275, 277, 278, 281, 285, 286, 299, 302, 303, 304, 314, 331, 333, 355, 356, 359, 360, 364, 365, 366, 367, 368, 382, 394, 410, 411, 412, 413, 414, 419, 420, 436, 452, 453, 454, 455, 456, 477, 491, 495, 500, 507, 515, 521, 533, 539, 544, 549, 555, 558, 566, 572, 573, 577, 583, 592, 595, 599, 612, 639, 641, 661, 664, 677], "freed": [27, 31, 33, 37, 39, 40, 42, 43, 48, 50, 53, 55, 59, 62, 63, 64, 68, 75, 79, 84, 85, 88, 104, 105, 133, 154, 159, 162, 165, 166, 168, 174, 178, 185, 186, 187, 189, 191, 198, 201, 202, 206, 207, 208, 209, 210, 211, 213, 216, 217, 218, 219, 221, 222, 223, 224, 225, 230, 231, 241, 242, 244, 249, 251, 260, 273, 275, 276, 277, 278, 280, 281, 285, 286, 290, 291, 299, 300, 301, 302, 303, 304, 306, 307, 308, 309, 312, 313, 314, 315, 316, 320, 325, 328, 329, 331, 332, 333, 334, 337, 355, 356, 358, 359, 364, 365, 366, 367, 368, 369, 370, 371, 372, 374, 375, 382, 383, 394, 410, 411, 419, 420, 425, 427, 428, 429, 431, 432, 436, 452, 456, 457, 458, 461, 477, 491, 495, 500, 502, 505, 507, 515, 526, 533, 539, 544, 545, 547, 555, 558, 564, 566, 572, 573, 583, 592, 595, 599, 605, 607, 608, 609, 612, 614, 615, 616, 617, 618, 623, 624, 625, 626, 627, 628, 629, 634, 636, 637, 640, 661, 664, 670, 677, 687], "int64_t": [29, 32, 34, 44, 45, 52, 54, 56, 73, 83, 180, 260, 282, 283, 284, 298, 341, 342, 351, 430, 433, 442, 503, 509, 532, 534, 549, 552, 559, 560, 561, 598, 601, 606, 622, 653, 672, 681, 684, 687], "durat": [29, 52, 73, 83, 534], "microsecond": [29, 52, 73, 83, 532, 559, 560, 561], "correl": [32, 34, 44, 45, 54, 56], "larg": [32, 44, 54, 285, 286], "why": 33, "int32_t": [35, 46, 57, 214, 215, 236, 260, 266, 426, 468, 578, 579, 589, 590, 598, 621, 652, 653, 668, 671, 680, 681, 683], "connectionid": [35, 46, 57], "posit": [35, 46, 57, 232, 395, 397, 399, 400, 401, 442, 450, 509, 512, 680, 681, 683, 684], "integ": [35, 46, 57, 304, 426, 430, 450, 509, 512, 621, 622, 643, 644, 652, 653, 668, 671, 672], "bson_oid_t": [37, 48, 59, 65, 69, 89, 106, 109, 112, 310, 312, 313, 687], "identifi": [37, 48, 59, 119, 145, 166, 169, 171, 179, 181, 182, 350, 524, 530], "topology_id": [65, 69, 89, 106, 109, 112], "observ": [66, 94, 100, 107], "stop": [70, 95, 101, 110, 131, 285], "await": [71, 77, 81, 272, 324, 380, 685], "mongoc_apm_command_failed_cb_t": 91, "whenev": [91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 660], "mongoc_apm_command_started_cb_t": 92, "mongoc_apm_command_succeeded_cb_t": 93, "mongoc_apm_server_changed_cb_t": 94, "mongoc_apm_server_closed_cb_t": 95, "mongoc_apm_server_heartbeat_failed_cb_t": 96, "mongoc_apm_server_heartbeat_started_cb_t": 97, "mongoc_apm_server_heartbeat_succeeded_cb_t": 98, "mongoc_apm_server_opening_cb_t": 99, "mongoc_apm_topology_changed_cb_t": 100, "mongoc_apm_topology_closed_cb_t": 101, "mongoc_apm_topology_opening_cb_t": 102, "caller": [115, 131, 166, 173, 176, 571, 688], "bypass_auto_encrypt": [116, 688], "boolean": [116, 117, 142, 153, 253, 304, 330, 483, 633, 635, 642, 678, 679, 687], "decrypt": [116, 120, 121, 124, 127, 170, 173, 192, 195], "bypass_query_analysi": 117, "22": [117, 118, 180, 183], "analysi": [117, 176, 688], "outgo": 117, "crypt_shar": [117, 119, 185, 207], "mongocryptd": [117, 119], "explicit": [117, 143, 166, 173, 176, 180, 183, 185, 413, 417], "encrypted_fields_map": 118, "encryptedfield": [118, 296, 360, 363, 688], "protect": [118, 125, 688], "malici": [118, 125, 688], "advertis": [118, 125, 688], "mongocryptduri": [119, 688], "27020": [119, 688], "mongocryptdbypassspawn": [119, 688], "prevent": [119, 243, 485, 569, 688], "spawn": [119, 688], "mongocryptdspawnpath": [119, 688], "trail": 119, "slash": 119, "search": [119, 660], "mongocryptdspawnarg": [119, 688], "idleshutdowntimeoutsec": 119, "60": [119, 660], "cryptsharedlibpath": 119, "filepath": 119, "unset": [119, 145, 275, 331, 350, 382, 482, 483, 621, 622, 650], "dynam": [119, 689], "itself": [119, 688], "rel": [119, 442], "compon": [119, 247, 255, 688], "rpath": 119, "runpath": 119, "style": [119, 437, 572, 574, 641], "substitut": 119, "cryptsharedlibrequir": 119, "proce": [119, 689], "fall": [119, 660], "back": [119, 163, 213, 226, 233, 420, 660, 687], "lookup": [120, 121, 192, 275, 331, 382], "appli": [120, 121, 125, 149, 151, 159, 160, 164, 180, 183, 205, 209, 210, 227, 241, 242, 275, 276, 277, 279, 282, 283, 284, 298, 299, 302, 303, 304, 315, 316, 328, 329, 331, 332, 352, 355, 356, 357, 364, 365, 367, 368, 374, 375, 382, 383, 409, 410, 452, 453, 454, 455, 456, 485, 512, 660, 685, 688], "coll": [122, 125, 156, 193, 329, 331, 688], "special": [122, 193, 276, 332, 383, 660], "repres": [122, 258, 275, 277, 331, 355, 382, 411, 413, 414, 417, 418, 511, 512, 524, 596, 687], "mongoc_kms_credentials_provider_callback_fn": [123, 194], "fn": [123, 194], "userdata": [123, 194], "km": [123, 124, 126, 166, 171, 194, 195, 196, 199], "along": [123, 194, 238, 262, 265, 270, 282, 284, 289, 317, 461], "kms_provid": [124, 166, 195, 688], "azur": [124, 126, 171, 195, 196], "gcp": [124, 126, 171, 195, 196], "kmip": [124, 126, 171, 195, 196], "At": [124, 195, 687], "accesskeyid": [124, 195], "secretaccesskei": [124, 195], "96": [124, 195, 688], "subtyp": [124, 125, 165, 166, 173, 174, 176, 182, 186, 195, 198, 688], "master": [124, 171, 195, 199, 688], "base64": [124, 125, 195], "tenantid": [124, 195], "clientid": [124, 195], "clientsecret": [124, 195], "identityplatformendpoint": [124, 195], "microsoftonlin": [124, 195], "email": [124, 195], "privatekei": [124, 195], "oauth2": [124, 195], "googleapi": [124, 171, 195], "schema_map": [125, 688], "trick": [125, 688], "unencrypt": [125, 688], "enforc": 125, "encrypted_str": 125, "keyid": [125, 165, 166, 171, 174, 182, 186, 198, 688], "aaaaaaaaaaaaaaaaaaaaaa": 125, "bsontyp": [125, 688], "aead_aes_256_cbc_hmac_sha_512": [125, 179], "determinist": [125, 179, 688], "tls_opt": [126, 196], "tlscertificatekeyfilepassword": [126, 196], "ae_opt": 126, "bcon_append": [126, 196], "ca1": [126, 196], "ca2": [126, 196], "_mongoc_auto_encryption_opts_t": 127, "queue": [128, 129, 134, 135, 136, 137, 138, 139, 140, 141, 148, 149, 150, 151], "propag": [128, 129, 131, 134, 135, 136, 137, 138, 139, 140, 141, 148, 149, 151, 160, 162, 209, 210, 212, 220, 241, 242, 276, 279, 280, 282, 283, 284, 285, 286, 288, 289, 290, 291, 295, 296, 297, 298, 300, 301, 302, 310, 311, 312, 313, 315, 316, 317, 319, 320, 321, 325, 327, 328, 329, 330, 332, 336, 337, 357, 358, 360, 363, 364, 367, 368, 373, 374, 375, 376, 377, 383, 422, 424, 435, 440, 453, 454, 455, 459, 477, 681, 685], "queu": 131, "upon": [131, 205, 206, 208, 209, 210, 212, 241, 262, 268, 275, 277, 279, 282, 283, 284, 298, 299, 302, 303, 304, 315, 331, 355, 357, 360, 364, 365, 367, 368, 374, 382, 409, 410, 424, 452, 453, 454, 455, 456, 477, 549, 572, 573, 578, 584, 589, 590], "afterward": [131, 147, 346, 347], "uniniti": [131, 165, 166, 174, 186, 187, 198, 249, 262, 283, 290, 291, 298, 300, 312, 313, 320, 325, 328, 329, 389, 392, 393, 619], "opaqu": [132, 145, 147, 161, 218, 274, 339, 346, 350, 530, 596], "term": [132, 145, 339, 350], "hint": [132, 137, 139, 141, 145, 149, 151, 284, 290, 291, 304, 320, 328, 329, 339, 350, 386, 512], "sake": [132, 145, 260, 339, 350, 497, 598], "mainli": 132, "supersed": [134, 136, 138, 140, 148, 150, 159, 278, 310, 317, 327, 344, 356, 416], "bitwis": [135, 141, 149, 151, 290, 291, 311, 312, 313, 320, 327, 328, 329, 473, 485, 513, 514, 611], "desir": [135, 141, 149, 151, 290, 291, 312, 313, 320, 326, 328, 329, 552, 566], "bson_validate_flags_t": [135, 141, 149, 151, 290, 291, 312, 313, 320, 328, 329], "skip": [135, 141, 149, 151, 156, 159, 277, 278, 282, 283, 284, 290, 291, 298, 299, 304, 312, 313, 320, 328, 329, 347, 355, 356], "collat": [137, 139, 141, 149, 151, 162, 241, 242, 276, 277, 280, 283, 284, 290, 291, 295, 296, 298, 304, 315, 316, 320, 328, 329, 332, 355, 358, 363, 374, 375, 383, 468], "textual": [137, 139, 141, 149, 151, 162, 241, 242, 276, 277, 280, 283, 284, 290, 291, 295, 296, 298, 315, 316, 320, 328, 329, 332, 355, 358, 363, 374, 375, 383], "comparison": [137, 139, 141, 149, 151, 162, 241, 242, 276, 277, 280, 283, 284, 290, 291, 295, 296, 298, 315, 316, 320, 328, 329, 332, 355, 358, 363, 374, 375, 383], "predic": [137, 139, 141, 149, 151, 290, 291, 320, 328, 329, 386], "bypass": [142, 164, 176, 227, 395, 401], "Will": [142, 397, 648], "client_sess": [143, 248, 261, 546, 548], "bson_value_t": [144, 156, 165, 166, 173, 174, 176, 182, 186, 187, 198, 275, 277, 283, 286, 290, 291, 298, 312, 313, 320, 328, 329, 331, 355, 382, 386, 407, 409, 412, 413, 414, 416, 417, 418, 429, 446, 460, 688], "comment": [144, 275, 277, 283, 286, 290, 291, 298, 304, 312, 313, 320, 328, 329, 331, 355, 382, 386], "assign": 144, "attach": [144, 275, 277, 283, 286, 290, 291, 298, 312, 313, 320, 328, 329, 331, 355, 382, 386], "appear": [144, 275, 277, 283, 286, 290, 291, 298, 312, 313, 320, 328, 329, 331, 355, 382, 386], "profil": [144, 275, 277, 283, 286, 290, 291, 298, 312, 313, 320, 328, 329, 331, 355, 382, 386, 660, 687], "currentop": [144, 275, 277, 283, 286, 290, 291, 298, 312, 313, 320, 328, 329, 331, 355, 382, 386], "server_id": [145, 161, 213, 218, 346, 350], "suitabl": [145, 213, 244, 337, 350, 511, 660], "definit": [146, 277, 286, 290, 291, 320, 328, 329, 355, 386], "mql": [146, 277, 286, 290, 291, 320, 328, 329, 355, 386], "_mongoc_bulk_operation_t": 147, "entireti": [148, 149, 150, 151], "whose": [148, 149, 150, 151, 503, 509, 660], "arrayfilt": [149, 151, 328, 329], "element": [149, 151, 310, 313, 328, 329, 439, 451, 537, 561], "err": [153, 260, 262, 598], "resumeaft": [154, 156, 275, 331, 382], "startaft": [154, 156, 275, 331, 382], "point": [154, 156, 185, 194, 207, 238, 270, 275, 331, 353, 382, 532, 548, 619], "neither": 154, "nor": 154, "underli": [155, 241, 274, 277, 282, 284, 299, 315, 348, 355, 374, 426, 427, 431, 436, 442, 451, 453, 461, 559, 566, 567, 568, 569, 571, 573, 575, 576, 582, 588], "maximum": [155, 164, 214, 215, 227, 228, 229, 275, 283, 298, 304, 331, 338, 349, 351, 352, 356, 382, 398, 512, 660], "maxawaittimem": [155, 156, 275, 304, 331, 347, 382], "_mongoc_change_stream_t": 156, "changestream": 156, "to_insert": [156, 329, 688], "err_doc": 156, "rs0": 156, "as_json": 156, "got": [156, 386, 395, 396, 397, 398, 399, 400, 401], "bson_empti": 156, "startatoperationtim": [156, 275, 331, 382], "recreat": 156, "left": [156, 660], "operationtim": [156, 246, 247, 255], "mutual": [156, 181, 182, 275, 331, 382, 546, 548], "persist": [156, 443, 444, 445, 447, 448], "wide": 156, "restart": 156, "unistd": 156, "resume_token_path": 156, "_save_resume_token": 156, "file_stream": [156, 416], "resume_token_doc": 156, "as_json_len": 156, "ssize_t": [156, 439, 451, 460, 559, 560, 561, 578, 579, 589, 590], "n_written": 156, "resume_token": 156, "bson_iter_valu": 156, "append": [156, 248, 262, 275, 331, 382, 396, 461, 490, 646, 647, 651, 652, 653, 654, 663], "fopen": [156, 688], "bson_append_valu": [156, 688], "fwrite": [156, 460, 688], "sizeof": [156, 460, 687, 688], "fclose": [156, 688], "_load_resume_token": 156, "bson_json_reader_t": [156, 687, 688], "reader": [156, 460, 478, 688], "r_ok": 156, "bson_json_reader_new_from_fil": [156, 688], "bson_json_reader_read": [156, 688], "bson_json_reader_destroi": [156, 688], "bson_concat": 156, "max_tim": 156, "30": [156, 468, 660], "bson_append_int64": 156, "synchron": 156, "cached_operation_tim": 156, "five": 156, "insert_cmd": 156, "bson_value_copi": 156, "value_typ": [156, 460, 688], "bson_value_destroi": [156, 166, 173, 176, 187, 198, 688], "required_major": 157, "required_minor": 157, "required_micro": 157, "minimum": [157, 229, 439, 578, 579, 687], "major": [157, 166, 241, 267, 272, 275, 276, 324, 331, 380, 382, 497, 660, 662, 669, 681, 685, 687], "minor": [157, 662], "micro": [157, 662], "db_name": [159, 160, 161, 162, 211, 241, 242, 276, 383, 687], "batch_siz": [159, 278, 299, 349, 356], "unus": [159, 213, 242, 316, 375, 439, 451], "mongoc_read_primari": [159, 160, 278, 279, 323, 356, 357, 379, 498, 512], "simplifi": [160, 262, 279, 357], "interfac": [160, 357, 401, 437, 474, 478, 512, 549, 550, 552, 585], "interpret": [162, 280, 358, 442, 660], "highest": [162, 241, 242, 276, 277, 280, 304, 315, 316, 332, 355, 358, 374, 375, 383], "readconcern": [162, 241, 242, 276, 277, 280, 283, 284, 298, 304, 315, 316, 322, 355, 358, 374, 375, 378, 411, 493, 494, 496, 497, 660], "writeconcern": [162, 241, 242, 276, 277, 280, 286, 288, 290, 291, 295, 296, 312, 313, 316, 319, 320, 328, 329, 332, 355, 358, 363, 375, 383, 386, 411], "inherit": [162, 205, 210, 241, 242, 260, 267, 272, 276, 277, 280, 283, 284, 286, 288, 290, 291, 295, 296, 298, 303, 304, 312, 313, 315, 316, 319, 320, 326, 328, 329, 332, 355, 358, 363, 365, 368, 374, 375, 378, 379, 380, 381, 383, 386, 411, 547, 598], "consult": [162, 241, 242, 276, 280, 315, 316, 332, 358, 374, 375, 383, 687], "onto": [163, 226, 239, 687], "listcollect": [164, 227, 346, 347, 365, 368], "privileg": [164, 227], "neg": [164, 180, 227, 304, 351, 442, 578, 579, 589, 590], "impact": [164, 227], "client_encrypt": [165, 166, 173, 174, 175, 176, 186, 187, 188, 198, 199, 688], "keyaltnam": [165, 169, 181, 187, 198, 688], "key_doc": [165, 186, 187, 198], "uuid": [165, 166, 174, 182, 186, 198], "0x04": [165, 166, 174, 182, 186, 198], "newli": [166, 206, 208, 211, 219, 223, 224, 225, 230, 231, 262, 273, 275, 277, 278, 281, 285, 286, 299, 302, 303, 304, 331, 333, 355, 356, 359, 360, 364, 365, 366, 382, 394, 410, 411, 419, 420, 436, 452, 453, 454, 455, 456, 477, 491, 495, 500, 507, 515, 533, 549, 555, 566, 572, 573, 577, 583, 592, 595, 612, 639, 640, 641, 661, 664, 677, 688], "datakei": 166, "keyaltnames_count": 169, "uint8_t": [170, 465, 687, 688], "materi": 170, "constitut": 170, "cryptograph": [170, 486], "random": [170, 179, 486, 487, 488, 489, 688], "devic": 170, "masterkei": 171, "region": 171, "cmk": 171, "amazonaw": 171, "keyvaultendpoint": 171, "keynam": 171, "keyvers": 171, "projectid": 171, "keyr": 171, "cloudkm": 171, "_mongoc_client_encryption_datakey_opts_t": 172, "mongoc_client_encryption_decrypt": [173, 688], "ciphertext": [173, 176], "payload": 176, "mongoc_aead_aes_256_cbc_hmac_sha_512_random": 179, "mongoc_aead_aes_256_cbc_hmac_sha_512_determinist": [179, 688], "mongoc_encrypt_algorithm_index": 179, "mongoc_encrypt_algorithm_unindex": 179, "unindex": 179, "contention_factor": 180, "factor": 180, "mongoc_encrypt_query_type_equ": 183, "mongoc_export": 183, "query_typ": 183, "_mongoc_client_encryption_encrypt_opts_t": 184, "enc": 185, "live": [185, 207], "keyvault_cli": [192, 688], "param": [194, 262], "popul": [194, 225, 231, 290, 291, 312, 313, 320, 328, 329, 524, 641], "ce_opt": 196, "_mongoc_client_encryption_opts_t": 197, "master_kei": 199, "rewrap": 199, "equival": [199, 344, 524, 551, 573, 660], "_mongoc_client_encryption_rewrap_many_datakey_result_t": 203, "_mongoc_client_encryption_t": 204, "NOT": [204, 226, 274, 353, 416, 441, 442, 449, 451, 460], "transient": [205, 209, 210, 241, 260, 275, 277, 282, 283, 284, 298, 299, 302, 303, 304, 315, 331, 355, 364, 365, 367, 368, 374, 382, 409, 410, 452, 453, 454, 455, 456, 598], "retryread": [205, 209, 210, 241, 275, 277, 282, 283, 284, 298, 299, 302, 303, 304, 315, 331, 355, 364, 365, 367, 368, 374, 382, 409, 410, 452, 453, 454, 455, 456, 660], "listdatabas": [205, 210], "represent": [205, 302, 303, 364, 365, 405, 525, 526, 660], "bson_gnuc_deprecated_for": [209, 282, 284, 285, 289, 299, 302, 311, 321, 344, 346, 364, 367, 452, 453, 630, 633], "vector": [209, 210, 561, 579, 590], "bson_strfreev": [209, 210, 367, 368], "strv": [210, 368], "unsign": [210, 239, 368, 450, 557, 687], "strcmp": [211, 460], "shall": [212, 228, 271, 282, 284, 285, 286, 289, 292, 299, 310, 313, 317, 320, 321, 327, 333, 345, 348, 354, 419, 420, 421, 436, 453, 499, 500, 566, 568, 569, 570, 571, 573, 575, 576, 577, 578, 588, 589, 590], "thu": 212, "handshak": [213, 265, 461], "notabl": 213, "loadbalanc": [213, 536, 597, 660], "16mb": 214, "40mb": 215, "show_serv": 219, "ping": [219, 239, 687], "sd": [219, 537], "bson_gnuc_deprec": [220, 229, 297, 325, 477], "serverstatu": 220, "prior": [226, 275, 277, 304, 331, 355, 382, 688], "shut": [226, 551], "join": 226, "max_pool_s": 228, "min_pool_s": 229, "kept": 229, "excess": 229, "expect": [229, 688], "hurt": [229, 660], "exceed": 229, "maxpools": [232, 660], "mongoc_handshake_appname_max": [235, 265], "caus": [237, 243, 269, 337, 660], "mongoc_enable_ssl": [238, 270], "denable_ssl": [238, 270], "_mongoc_client_pool_t": 239, "destructor": 239, "pthread": [239, 687], "pthread_mutex_t": [239, 687], "in_shutdown": [239, 687], "worker": [239, 687], "probabl": [239, 687], "portion": [239, 617, 625, 636, 687], "pthread_mutex_lock": [239, 687], "pthread_mutex_unlock": [239, 687], "pthread_t": [239, 687], "pthread_mutex_init": [239, 687], "pthread_creat": [239, 687], "pthread_join": [239, 687], "tabl": [241, 242, 276, 277, 304, 315, 316, 332, 355, 374, 375, 383], "degrad": [241, 315, 374], "prepar": [241, 276], "clonecollectionascap": [241, 276], "enablemajorityreadconcern": [241, 276], "replset": [241, 276], "my_collect": [241, 276], "read_concern": [241, 260, 267, 276, 322, 378, 490, 491, 492, 493, 494, 496, 598, 607], "tocollect": [241, 276], "my_capped_collect": [241, 276], "1024": [241, 276], "wtimeoutm": [241, 276, 622, 644, 660], "mongoc_read_concern_level_major": [241, 276, 368, 497], "mistak": [242, 316, 375], "obei": [242, 316, 375], "child": [243, 460, 687], "fork": 243, "interf": 243, "parent": [243, 326, 381], "endsess": 243, "increment": [243, 247, 255], "for_writ": 244, "cluster_tim": 246, "clustertim": [246, 247, 252], "dirti": 253, "label": [260, 385], "session_opt": [260, 546, 548, 598], "default_txn_opt": [260, 598], "txn_opt": [260, 547, 598], "insert_opt": [260, 262, 546, 598], "reply_json": [260, 598], "nonexist": [260, 262, 598], "namespaceexist": [260, 262, 598], "error_cod": [260, 262, 598], "snapshot": [260, 304, 497, 543, 546, 548, 598], "retry_transact": [260, 598], "whole": [260, 460, 598], "transienttransactionerror": [260, 385, 598], "bson_get_monotonic_tim": [260, 598], "unknowntransactioncommitresult": [260, 385, 598], "unrecover": [260, 598], "update_opt": 261, "find_opt": [261, 548], "2000": 261, "guarante": [261, 282, 283, 284, 298, 486, 660, 687, 688, 689], "reflect": 261, "catch": [261, 685], "ctx": [262, 263], "reach": [262, 552, 561, 660], "insid": [262, 299], "stack": [262, 279, 619], "with_transact": 262, "ctx_t": 262, "create_and_insert_doc": 262, "local_repli": 262, "retval": [262, 687], "bson_copi": 262, "txn": 262, "mongoc_read_concern_level_loc": [267, 497], "great": [267, 272, 324, 380, 497, 512, 685], "websit": [268, 282, 284, 323, 379, 497, 498, 510, 660, 685], "mongoc_stream_initiator_t": [271, 274], "transport": [271, 274, 575], "fulfil": [271, 274], "contract": 271, "whatev": 271, "mongoc_write_concern_w_default": [272, 285, 305, 324, 380, 685], "misconfigur": 273, "_mongoc_client_t": 274, "shard": [274, 485, 508, 512, 514, 597, 660, 687], "rout": [274, 460], "individu": [274, 468, 497, 651, 652, 653, 654], "scenario": 274, "batchsiz": [275, 277, 304, 331, 346, 347, 355, 382], "unlik": [275, 331, 382], "fulldocu": [275, 331, 382], "utf": [275, 331, 382, 411, 445, 454, 459, 646, 647, 648, 649, 655, 658, 661], "updatelookup": [275, 331, 382], "whenavail": [275, 331, 382], "fulldocumentbeforechang": [275, 331, 382], "createrol": [276, 332, 383], "Not": [277, 278, 569, 575, 588, 660], "mongoc_query_exhaust": [277, 485], "bypassdocumentvalid": [277, 312, 313, 320, 328, 329, 355], "merg": [277, 355], "pipeline_queri": 277, "collection2": 277, "collection1": 277, "unwrap": 279, "print_collection_stat": 279, "collstat": [279, 325, 687], "deep": [281, 359, 479, 491, 500, 515, 533, 595, 664], "unalt": [281, 359], "accur": [282, 283, 284, 298, 311], "migrat": [282, 284, 346], "print_query_count": [282, 284], "prid64": [282, 283, 284, 298, 622, 687], "contrast": [283, 298], "print_count": [283, 298], "expr": 283, "geowithin": 283, "center": 283, "nearspher": 283, "centerspher": 283, "bson_append_utf8": [284, 386, 395, 396, 397, 398, 399, 400, 401, 468, 650, 687], "reason": [285, 286, 351, 660], "index_opt": 288, "command_opt": 288, "obsolet": 288, "mongoc_delete_single_remov": [289, 384], "deletedcount": [290, 291], "thin": [293, 294, 300, 318, 362], "wrapper": [293, 294, 300, 318, 362, 549, 550, 551, 552, 555, 580, 585], "26": 296, "unrecogn": 296, "oversight": 298, "stabl": 298, "strict": [298, 519, 522, 523, 688], "conveni": [299, 386, 398, 401, 460, 660, 687], "orderbi": 299, "histor": [299, 660], "op_queri": [299, 304], "convert": [299, 304, 524], "typic": [299, 558, 685], "invis": 299, "tradit": 299, "showdiskloc": 299, "showrecordid": [299, 304], "With": [299, 304, 685, 688], "plan": [299, 304], "_remov": 300, "_new": 300, "around": [300, 549, 550, 551, 552, 555, 580], "findandmodifi": [300, 394, 398, 399, 401], "modif": [300, 441], "cmpxchg": 300, "find_and_modifi": [300, 397, 401], "listindex": 303, "ten": 304, "print_ten_docu": 304, "field_name_on": 304, "field_name_two": 304, "tailabl": [304, 345, 346, 347, 352], "nocursortimeout": 304, "oplogreplai": 304, "allowpartialresult": 304, "returnkei": 304, "singlebatch": 304, "allowdiskus": 304, "Then": [304, 687, 688], "unmodifi": 304, "maxscan": 304, "transpar": [304, 687], "n_document": [311, 312], "insertedcount": [312, 313], "canon": [314, 660, 688], "stringif": 314, "straight": 314, "mongoc_remove_single_remov": [317, 513], "new_db": [318, 319], "new_nam": [318, 319], "drop_target_before_renam": [318, 319], "renam": [318, 319], "matchedcount": [320, 328, 329], "modifiedcount": [320, 328, 329], "upsertedcount": 320, "upsertedid": [320, 328, 329], "save": [321, 441, 460, 473, 688], "_mongoc_collection_t": 326, "set_": 326, "mongoc_update_multi_upd": [327, 611], "next_doc": 329, "to_str": 329, "example_col": 329, "scandata": 330, "clone": [333, 353, 688], "reset": 333, "hand": 337, "run_queri": 337, "loop": [337, 660], "nrepli": 337, "good_queri": 337, "bad_queri": 337, "serverselectiontryonc": [337, 660], "fake": 337, "badoper": 337, "codenam": 337, "badvalu": 337, "regular": [345, 437], "unreli": 345, "begun": 345, "told": 345, "1234": [346, 347], "firstbatch": [346, 347], "low": [346, 347, 486], "synthes": [346, 439], "rang": [346, 347, 621, 653], "ephemer": 348, "good": 348, "retain": 348, "sign": [351, 426, 430, 433, 671, 672], "although": [351, 352, 398, 688], "unchang": 351, "max_await_time_m": 352, "uint64_t": [352, 398, 450], "_mongoc_cursor_t": 353, "repeat": [353, 660], "lazi": 353, "traffic": 353, "custom_data": 354, "cleartext": 354, "listlocalsess": 355, "current_op_queri": 355, "matcher": [364, 475, 476, 478], "name_filt": 365, "abbbbc": 365, "bson_append_regex": 365, "ab": 365, "bson_iter_utf8": 365, "rc": [368, 656, 657, 659], "_mongoc_database_t": 381, "mongoc_delete_non": 384, "fam_opt": [386, 398, 401], "zlatan": [386, 395, 396, 397, 398, 399, 400, 401], "ibrahimov": [386, 395, 396, 397, 398, 399, 400, 401], "striker": [386, 395, 397, 398, 399, 400, 401], "firstnam": [386, 395, 396, 397, 398, 399, 400, 401], "lastnam": [386, 395, 396, 397, 398, 399, 400, 401], "profess": [386, 395, 397, 398, 399, 400, 401], "footbal": [386, 395, 397, 398, 399, 400, 401], "player": [386, 395, 397, 398, 399, 400, 401], "bump": [386, 395, 396, 398, 399, 401], "hi": [386, 395, 396, 397, 398, 399, 401], "ag": [386, 395, 397, 398, 399, 400, 401], "futureopt": [386, 398, 401], "__line__": [386, 395, 396, 397, 398, 399, 400, 401], "find_and_modify_opt": 387, "builder": [387, 394, 395, 396, 397, 398, 399, 400, 401], "mongoc_find_and_modify_flags_t": [390, 397], "talk": 395, "fam_bypass": [395, 401], "he": [395, 401], "plai": [395, 401], "pretti": [395, 401], "lasterrorobject": [395, 396, 397, 399, 400, 401], "updatedexist": [395, 396, 397, 399, 400, 401], "56562a99d13e6d86239c7b00": [395, 396, 397, 399, 400, 401], "34": [395, 397, 401], "goal": [395, 396, 397, 399, 400, 401], "342": [395, 397, 400, 401], "fieldnam": 396, "exclud": [396, 410], "fam_field": [396, 401], "talli": [396, 399, 401], "mongoc_find_and_modify_return_new": [396, 397, 400, 401], "343": [396, 399, 401], "mongoc_find_and_modify_non": 397, "mongoc_find_and_modify_remov": 397, "mongoc_find_and_modify_upsert": [397, 401], "fam_flag": [397, 401], "35": [397, 399, 400, 401], "28": [397, 401], "62": [397, 401], "didn": [397, 401], "max_time_m": 398, "permit": 398, "fam_sort": [399, 401], "oldest": [399, 401], "fam_upd": [400, 401], "him": [400, 401], "book": [400, 401], "_previous_": [400, 401], "abl": [401, 688], "accommod": 401, "fam": 401, "databasenam": 401, "validationact": 401, "validationlevel": 401, "moder": 401, "collectionnam": 401, "mongoc_major_vers": [402, 662], "mongoc_micro_vers": [403, 662], "mongoc_minor_vers": [404, 662], "pre": [405, 431], "bucket": [407, 408, 409, 410, 411, 412, 413, 414, 416, 417, 418], "file_id": [407, 409, 412, 413, 414, 416, 417, 418, 460], "destin": [409, 560, 561], "bucketnam": 411, "exce": [411, 653], "chunksizebyt": [411, 413, 414, 417, 418], "255kb": 411, "_mongoc_gridfs_bucket_t": 416, "compliant": [416, 460], "source_file_path": 416, "file_copy_path": 416, "o_rdonli": [416, 460], "o_creat": 416, "o_rdwr": 416, "perror": 416, "suit": 420, "alias": [425, 438, 443, 449], "md5": [431, 438, 447, 449], "date": 433, "epoch": 433, "_mongoc_gridfs_file_list_t": 437, "marshal": 437, "top": [437, 512, 585, 660], "do_someth": [437, 662], "content_typ": [438, 444, 449], "chunk_siz": [438, 449], "iov": [439, 451, 460, 561, 579, 590], "iovcnt": [439, 451, 561, 579, 590], "min_byt": [439, 578, 579], "timeout_msec": [439, 451, 578, 579, 589, 590], "scatter": [439, 474], "delta": 442, "whenc": 442, "move": 442, "seek_set": 442, "seek_cur": 442, "seek_end": 442, "fseek": 442, "einval": 442, "checksum": 447, "_mongoc_gridfs_file_t": 449, "readv": 449, "writev": [449, 590], "upload_d": 449, "gather": [451, 474, 561, 579], "_mongoc_gridfs_t": 460, "gridfs_fil": 460, "gridfs_file_list": 460, "essenti": 460, "caveat": [460, 512], "quit": 460, "expens": [460, 473], "said": 460, "caution": [460, 461], "mongoc_gridf": 460, "tightli": 460, "worth": 460, "fit": [460, 653], "model": [460, 578, 589, 590], "fcntl": 460, "buf": [460, 486, 487, 488, 559, 560, 578, 589, 687], "4096": 460, "iov_bas": [460, 474], "iov_len": [460, 474], "grab": 460, "input_fil": 460, "bson_type_int32": 460, "v_int32": 460, "driver_nam": 461, "driver_vers": 461, "truncat": 461, "conjunct": [461, 571], "bson_mem_set_vt": 461, "bson_mem_restore_vt": 461, "pedant": 461, "phongo": 461, "bson_host_name_max": 462, "uint16_t": [462, 640], "famili": [462, 486, 558], "pad": [462, 465, 468, 471, 565], "bson_gnuc_pur": [463, 466, 469, 564], "geo": [463, 465, 468], "twod_sphere_vers": 465, "twod_bits_precis": [465, 468], "twod_location_min": [465, 468], "twod_location_max": [465, 468], "haystack_bucket_s": 465, "tune": [465, 468, 471], "is_initi": 468, "drop_dup": 468, "spars": 468, "expire_after_second": 468, "weight": 468, "default_languag": 468, "language_overrid": 468, "geo_opt": 468, "mongoc_index_opt_storage_t": [468, 471], "storage_opt": 468, "partial_filter_express": 468, "dropdup": 468, "silent": 468, "2d": 468, "123": 468, "geo_test": 468, "wiredtig": [469, 471], "config_str": 471, "mongoc_insert_non": 473, "mongoc_insert_continue_on_error": 473, "mongoc_insert_no_valid": 473, "1u": [473, 611], "u_long": 474, "iovec": 474, "bewar": 474, "_mongoc_matcher_t": 478, "neq": 478, "spectrum": 478, "stdin": 478, "bson_reader_t": 478, "fd": [478, 572], "fileno": 478, "stdin_fileno": 478, "bson_reader_new_from_fd": 478, "bson_reader_read": 478, "bson_reader_destroi": 478, "overwritten": 479, "mongoc_query_tailable_cursor": 485, "mongoc_query_secondary_ok": 485, "mongoc_query_oplog_replai": 485, "mongoc_query_no_cursor_timeout": 485, "mongoc_query_await_data": [485, 514], "mongoc_query_parti": 485, "inact": 485, "period": [485, 528, 531], "blast": 485, "faster": 485, "pull": [485, 486], "throw": [485, 660], "num": [486, 487, 488], "strong": 486, "pseudo": 486, "usual": [486, 689], "enough": [486, 489], "prng": [486, 489], "hardwar": 486, "insofar": 486, "degre": [486, 687], "startup": 486, "entropi": [487, 488], "mix": 487, "bound": 487, "estim": [487, 503, 509, 512], "alter": [496, 524, 678, 679, 680, 681, 682, 683, 684], "frozen": [496, 678, 679, 680, 681, 682, 683, 684], "isol": [497, 660], "right": [497, 685, 689], "macro": [497, 648, 662, 687], "mongoc_read_concern_level_lineariz": 497, "lineariz": 497, "mongoc_read_concern_level_avail": 497, "mongoc_read_concern_level_snapshot": 497, "mongoc_read_primary_pref": [498, 512], "mongoc_read_secondary_pref": [498, 512], "mongoc_read_nearest": [498, 512], "dispatch": [498, 508], "hedg": [502, 508], "stale": [503, 509, 514], "maxstalenesssecond": [503, 509, 660], "mongoc_no_max_stal": [503, 509, 512], "sens": [506, 512], "read_mod": 507, "fastest": [508, 660], "unfinish": 508, "max_staleness_second": 509, "run_query_with_read_prefs_tag": 511, "tagset": 511, "rack": [511, 512], "rack1": 511, "datacent": 511, "rack2": 511, "rp_tag": 511, "dbname": 511, "stick": 512, "won": 512, "among": [512, 660, 687], "nearest": [512, 660], "irrespect": 512, "evalu": 512, "primarypref": [512, 660], "secondarypref": [512, 660], "combin": [512, 675], "colon": 512, "readpreferencetag": [512, 660], "resort": 512, "matter": 512, "choic": [512, 689], "lastwrited": 512, "lag": [512, 660], "clock": [512, 552, 559, 560, 561, 660], "suffer": [512, 660], "elig": [512, 660], "mongoc_smallest_max_staleness_second": 512, "90": [512, 660], "outstand": 512, "mongoc_remove_non": 513, "mongoc_reply_non": 514, "mongoc_reply_cursor_not_found": 514, "mongoc_reply_query_failur": 514, "mongoc_reply_shard_config_stal": 514, "mongoc_reply_await_cap": 514, "deprecation_error": [516, 518], "declar": 520, "mongoc_server_api_v1": 525, "deploy": [528, 531], "measur": 534, "_mongoc_server_description_t": 535, "sdam": [535, 596], "possibleprimari": 536, "rsarbit": 536, "rsother": 536, "rsghost": 536, "_mongoc_session_opt_t": 538, "causal_consist": 546, "particip": [546, 680], "setter": [547, 598], "opportun": 547, "offici": [548, 687], "query_opt": 548, "expire_at": [549, 552, 559, 560, 561], "bsd": [549, 550, 551, 552, 557, 563], "sockaddr": [550, 552, 556], "addr": [550, 552, 556], "mongoc_socklen_t": [550, 552, 556, 562, 580], "addrlen": [550, 552, 556], "bind": 550, "better": [550, 552, 569, 588], "monoton": [552, 559, 560, 561], "mind": 552, "captur": 554, "getpeernam": 555, "getnameinfo": 555, "backlog": 557, "af_inet": 558, "sock_stream": 558, "underneath": 558, "buflen": [559, 560], "recv": 559, "sendmsg": 561, "iov_max": 561, "fallback": [561, 620, 621, 622, 623], "optnam": [562, 580], "optval": [562, 580], "optlen": [562, 580], "sockopt": 562, "setsockopt": [562, 580], "_mongoc_socket_t": 563, "friendlier": 563, "solari": 563, "shallow": 565, "sure": 565, "base_stream": 566, "buffer_s": 566, "grow": 566, "past": 566, "_mongoc_stream_buffered_t": 567, "subclass": [567, 574, 584, 587], "descriptor": [568, 571, 572, 574], "_mongoc_stream_file_t": 574, "flush": 575, "physic": 575, "mimic": 575, "semant": [575, 578, 589, 590], "fflush": 575, "forc": 575, "space": 575, "Such": 576, "ownership": [577, 583], "sockettimeoutm": [577, 660], "connecttimeoutm": [577, 621, 660], "loos": [578, 589, 590], "eagain": 581, "exchang": 581, "_mongoc_stream_socket_t": 584, "_mongoc_stream_t": 585, "idea": 585, "perhap": 585, "shim": 585, "turn": 585, "_mongoc_stream_tls_t": 587, "cork": 588, "td": [592, 593, 594, 597], "knowledg": [593, 594, 596], "writabl": 594, "_mongoc_topology_description_t": 596, "Its": 596, "_mongoc_transaction_opt_t": 598, "max_commit_time_m": 606, "committransact": 606, "mongoc_transaction_non": 610, "mongoc_transaction_start": 610, "mongoc_transaction_in_progress": 610, "mongoc_transaction_commit": 610, "mongoc_transaction_abort": 610, "mongoc_update_non": 611, "mongoc_update_upsert": 611, "mongoc_update_no_valid": 611, "bson_has_field": 616, "scheme": [618, 630, 631], "srv": [618, 630, 631, 632], "bson_init_stat": 619, "prop": [619, 650], "40domain": [619, 650], "insensit": [620, 621, 622, 623, 638, 642, 643, 644, 645, 651, 652, 653, 654, 660], "myvalu": [621, 622], "srvservicenam": 632, "seen": 641, "myuser": 641, "mypass": 641, "kerberosus": 641, "zlibcompressionlevel": [643, 660], "my_servic": 650, "minheartbeatfrequencym": 652, "utf8": [654, 661], "_mongoc_uri_t": 660, "host1": 660, "port1": 660, "host2": 660, "port2": 660, "hostn": 660, "portn": 660, "enclos": 660, "value1": 660, "value2": 660, "unexpect": [660, 688], "easier": 660, "mongoc_uri_appnam": 660, "applicationnam": 660, "db1": 660, "2500": 660, "resembl": 660, "_mongodb": 660, "_tcp": 660, "txt": [660, 687], "libresolv": 660, "lack": 660, "res_nsearch": 660, "res_search": 660, "mongoc_uri_retryread": 660, "mongoc_uri_retrywrit": 660, "retrywrit": 660, "slow": 660, "mongoc_uri_compressor": 660, "compress": 660, "mongoc_uri_connecttimeoutm": 660, "000": 660, "mongoc_uri_sockettimeoutm": 660, "300": 660, "mongoc_uri_replicaset": 660, "mongoc_uri_zlibcompressionlevel": 660, "mongoc_uri_loadbalanc": 660, "mongoc_uri_srvmaxhost": 660, "srvmaxhost": 660, "unlimit": 660, "timeoutm": 660, "mongoc_uri_authmechan": 660, "mongoc_uri_authmechanismproperti": 660, "option_kei": 660, "option_valu": 660, "undefin": 660, "mongoc_uri_authsourc": 660, "unnecessari": 660, "mongoc_uri_canonicalizehostnam": 660, "canonicalizehostnam": 660, "alia": 660, "mongoc_uri_gssapiservicenam": 660, "gssapiservicenam": 660, "verif": 660, "mongoc_uri_ssl": 660, "mongoc_uri_sslclientcertificatekeyfil": 660, "sslclientcertificatekeyfil": 660, "mongoc_uri_sslclientcertificatekeypassword": 660, "sslclientcertificatekeypassword": 660, "mongoc_uri_sslcertificateauthorityfil": 660, "sslcertificateauthorityfil": 660, "mongoc_uri_sslallowinvalidcertif": 660, "sslallowinvalidcertif": 660, "mongoc_uri_sslallowinvalidhostnam": 660, "sslallowinvalidhostnam": 660, "scanner": 660, "wake": 660, "rescan": 660, "half": 660, "serverselectiontimeoutm": 660, "technic": [660, 686], "longest": 660, "slowest": 660, "mongoc_uri_heartbeatfrequencym": 660, "000m": 660, "mongoc_uri_serverselectiontimeoutm": 660, "0000m": 660, "mongoc_uri_serverselectiontryonc": 660, "repeatedli": 660, "paus": 660, "signal": 660, "mongoc_uri_socketcheckintervalm": 660, "socketcheckintervalm": 660, "quick": 660, "mongoc_uri_directconnect": 660, "directconnect": 660, "presenc": 660, "mongoc_uri_maxpools": 660, "mongoc_uri_minpools": 660, "minpools": 660, "mongoc_uri_maxidletimem": 660, "maxidletimem": 660, "mongoc_uri_waitqueuemultipl": 660, "waitqueuemultipl": 660, "mongoc_uri_waitqueuetimeoutm": 660, "mongoc_uri_w": 660, "getlasterror": 660, "indefinit": 660, "mongoc_uri_wtimeoutm": 660, "mongoc_uri_journ": 660, "journal": [660, 666, 667, 676, 679], "disk": 660, "mongoc_uri_readconcernlevel": 660, "readconcernlevel": 660, "unspecifi": 660, "readprefer": 660, "chosen": 660, "randomli": 660, "localthresholdm": 660, "slower": 660, "mongoc_uri_readprefer": 660, "secondaryok": 660, "mongoc_uri_readpreferencetag": 660, "mongoc_uri_localthresholdm": 660, "far": 660, "15m": 660, "mongoc_uri_maxstalenesssecond": 660, "smallest": 660, "threshold": 660, "localthreshold": 660, "mongoc_uri_saf": 660, "escaped_str": 661, "unescap": 661, "40": 661, "escap": 661, "preprocessor": [662, 689], "mongoc_version_": 662, "mongoc_version_hex": 662, "fsync": [666, 678], "wmajor": [668, 669], "mongoc_write_concern_w_major": [668, 685], "wtag": 670, "word": 673, "fsync_": 678, "wtimeout_msec": [681, 683, 684], "preset": 682, "principl": 685, "mongoc_write_concern_w_unacknowledg": 685, "receipt": 685, "mongoc_write_concern_w_errors_ignor": 685, "synonym": 685, "preview": 686, "stabil": 686, "offer": 687, "brief": 687, "find_packag": 687, "cmakelist": 687, "hello_mongoc": 687, "four": 687, "add_execut": 687, "target_link_librari": 687, "mongoc_shar": 687, "mongoc_stat": [687, 689], "Or": 687, "aren": 687, "lmongoc": 687, "lbson": 687, "cl": 687, "ic": 687, "coll_nam": 687, "born": 687, "isod": 687, "1906": 687, "09": 687, "di": 687, "1992": 687, "01": 687, "grace": 687, "hopper": 687, "math": 687, "matic": 687, "flow": 687, "cobol": 687, "ba": 687, "school": 687, "vassar": 687, "phd": 687, "yale": 687, "tm": 687, "lang_nam": 687, "keylen": 687, "child2": 687, "calcul": 687, "tm_year": 687, "year": 687, "1900": 687, "tm_mon": 687, "month": 687, "tm_mdai": 687, "bson_append_date_tim": 687, "mktime": 687, "92": 687, "bson_append_array_begin": 687, "bson_uint32_to_str": 687, "bson_append_array_end": 687, "notat": 687, "manner": 687, "closer": 687, "bcon_date_tim": 687, "notic": 687, "bson_new_from_json": 687, "interact": 687, "mycol": 687, "bson_oid_init": 687, "bson_append_oid": 687, "switch": [687, 689], "55ef43766cb5f36a3bae6ee4": 687, "color": 687, "bcon_oid": 687, "old_valu": 687, "new_valu": 687, "55ef549236fe322f9490e17b": 687, "illustr": 687, "prove": 687, "_simpl": 687, "variant": 687, "avgobjs": 687, "numext": 687, "storages": 687, "8192": 687, "lastextents": 687, "paddingfactor": 687, "userflag": 687, "nindex": 687, "indexdetail": 687, "totalindexs": 687, "8176": 687, "indexs": 687, "unawar": 687, "vast": 687, "programm": 687, "topic": 687, "brows": 687, "rest": 687, "administr": 688, "workload": 688, "unauthor": 688, "parti": 688, "sensit": 688, "denable_shared_bson": 688, "denable_client_side_encrypt": 688, "reject": 688, "incorrect": 688, "unsupport": 688, "logpath": 688, "logappend": 688, "atla": 688, "create_schema_fil": 688, "keyvault_db": 688, "keyvault_col": 688, "client_encryption_opt": 688, "datakey_opt": 688, "datakey_id": 688, "mongoc_encryption_example_1": 688, "schema_str": 688, "schema_string_len": 688, "outfil": 688, "dochub": 688, "bcon_bin": 688, "v_binari": 688, "data_len": 688, "jsonschema": 688, "__libmongoctestkeyvault": 688, "encrypted_db": 688, "encrypted_col": 688, "exit_statu": 688, "local_masterkei": 688, "local_masterkey_len": 688, "index_kei": 688, "create_index_cmd": 688, "mongocli": 688, "keyvault_namespac": 688, "auto_encryption_opt": 688, "unencrypted_cli": 688, "unencrypted_col": 688, "hex_to_bin": 688, "getenv": 688, "keyvault": 688, "partialfilterexpress": 688, "123456789": 688, "print_one_docu": 688, "keyword": 688, "create_schema": 688, "mongoc_encryption_example_2": 688, "create_cmd": 688, "create_cmd_opt": 688, "memset": 688, "class": 688, "mongoc_encryption_example_3": 688, "encrypted_field": 688, "to_encrypt": 688, "encrypt_opt": 688, "bson_type_utf8": 688, "v_utf8": 688, "strlen": 688, "mongoc_encryption_example_4": 688, "fact": 688, "u": 688, "win32": 689, "consol": 689, "rememb": 689, "solut": 689, "explor": 689, "expand": 689, "chose": 689, "ran": 689, "dialog": 689, "dll": 689, "bin": 689, "stdafx": 689, "ws2_32": 689, "secur32": 689, "crypt32": 689, "bcrypt": 689, "purpos": 689, "archiv": 689, "routin": 689, "gethostnam": 689, "bson_stat": 689, "peopl": 689, "learn": 689}, "objects": {"": [[194, 0, 1, "c.mongoc_kms_credentials_provider_callback_fn", "mongoc_kms_credentials_provider_callback_fn"]]}, "objtypes": {"0": "c:type"}, "objnames": {"0": ["c", "type", "C type"]}, "titleterms": {"advanc": 0, "connect": [0, 8, 660, 687], "replica": [0, 660], "set": [0, 1, 6, 13, 395, 396, 397, 398, 399, 400, 512, 660], "shard": 0, "cluster": 0, "an": 0, "ipv6": [0, 660], "address": 0, "ipv4": [0, 660], "unix": [0, 19], "domain": 0, "socket": 0, "server": [0, 7, 10, 660, 688], "over": [0, 1], "tl": [0, 7, 660], "compress": 0, "data": [0, 1], "from": [0, 19, 283, 687], "mongodb": [0, 4, 19, 687], "addit": [0, 19], "option": [0, 7, 19, 304, 386, 660], "aggreg": 1, "framework": 1, "exampl": [1, 3, 9, 12, 23, 156, 162, 210, 211, 239, 241, 242, 248, 260, 261, 262, 274, 276, 277, 279, 280, 282, 283, 284, 298, 299, 300, 301, 304, 315, 316, 329, 332, 337, 353, 355, 358, 365, 368, 374, 375, 381, 383, 401, 416, 437, 460, 468, 478, 490, 511, 540, 546, 548, 598, 616, 619, 641, 648, 650, 660, 663], "requir": 1, "us": [1, 687, 688, 689], "zip": 1, "code": 1, "state": 1, "popul": 1, "10": 1, "million": 1, "averag": 1, "citi": 1, "api": [2, 13, 525], "refer": 2, "applic": 3, "perform": [3, 5], "monitor": [3, 660], "apm": 3, "command": [3, 12, 23, 299, 304, 687], "sdam": 3, "function": [3, 13, 26, 38, 49, 60, 66, 70, 76, 80, 86, 90, 107, 110, 113, 127, 147, 156, 172, 184, 197, 203, 204, 239, 261, 274, 283, 326, 353, 381, 401, 416, 437, 438, 449, 460, 465, 468, 471, 478, 483, 486, 497, 512, 523, 525, 535, 538, 563, 565, 574, 584, 585, 596, 598, 660, 685], "authent": [4, 7, 660], "basic": [4, 5, 12, 22, 276, 332, 383, 687], "scram": 4, "sha": 4, "256": 4, "1": 4, "legaci": [4, 660], "cr": 4, "gssapi": 4, "kerbero": 4, "sasl": 4, "plain": 4, "x": 4, "509": 4, "certif": [4, 7], "via": 4, "aw": 4, "iam": 4, "credenti": 4, "uri": [4, 7], "environ": [4, 19], "ec": 4, "ec2": 4, "troubleshoot": 5, "checklist": 5, "counter": 5, "submit": 5, "bug": 5, "report": [5, 13], "bulk": 6, "write": [6, 276, 326, 332, 383, 660, 685], "oper": [6, 276, 332, 383, 687], "insert": [6, 687], "mix": 6, "order": 6, "unord": 6, "bypass": 6, "document": [6, 19, 22, 687], "valid": 6, "concern": [6, 326, 497, 660, 685], "collat": 6, "unacknowledg": 6, "further": 6, "read": [6, 326, 497, 512, 660], "configur": [7, 19], "mongoc_ssl_opt_t": [7, 565], "client": [7, 20, 22, 213, 688], "verif": 7, "support": [7, 19, 525], "librari": [7, 19], "openssl": 7, "libressl": 7, "libtl": 7, "nativ": 7, "window": [7, 19], "secur": 7, "channel": 7, "maco": [7, 19], "darwin": 7, "transport": 7, "pool": [8, 20, 660], "singl": [8, 213], "mode": [8, 512], "creat": [9, 687], "index": [9, 14], "cursor": 10, "handl": 10, "failur": [10, 19], "destroi": 10, "side": [10, 20, 22, 688], "tailabl": 10, "aid": 11, "debug": 11, "gdb": 11, "lldb": 11, "assert": 11, "distinct": 12, "mapreduc": 12, "setup": [12, 23], "more": 12, "complic": 12, "run": [12, 23, 662], "error": [13, 128, 129, 131, 134, 135, 136, 137, 138, 139, 140, 141, 148, 149, 151, 160, 162, 205, 209, 210, 212, 220, 241, 242, 273, 276, 279, 280, 282, 283, 284, 285, 286, 288, 289, 290, 291, 295, 296, 297, 298, 300, 301, 302, 303, 310, 311, 312, 313, 315, 316, 317, 319, 320, 321, 325, 327, 328, 329, 330, 332, 336, 337, 354, 357, 358, 360, 363, 364, 365, 367, 368, 373, 374, 375, 376, 377, 383, 422, 424, 435, 440, 442, 453, 454, 455, 459, 477], "descript": [13, 132, 133, 142, 144, 145, 146, 158, 159, 170, 171, 209, 213, 243, 248, 253, 277, 279, 281, 282, 283, 284, 285, 286, 288, 289, 290, 291, 292, 293, 294, 295, 296, 298, 299, 300, 301, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 317, 318, 319, 320, 321, 322, 323, 324, 325, 327, 328, 329, 330, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 345, 346, 347, 348, 349, 350, 351, 352, 355, 356, 359, 360, 362, 363, 364, 367, 386, 387, 389, 392, 393, 395, 396, 397, 398, 399, 400, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 464, 465, 467, 468, 470, 471, 472, 473, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 496, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 513, 514, 527, 528, 529, 530, 531, 532, 533, 534, 536, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 565, 567, 591, 595, 597, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 678, 679, 680, 681, 682, 683, 684], "label": 13, "transienttransactionerror": 13, "unknowntransactioncommitresult": 13, "version": [13, 525, 662], "gridf": [15, 20], "guid": 16, "libmongoc": [17, 19, 687, 689], "introduct": 17, "initi": 18, "cleanup": 18, "synopsi": [18, 21, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685], "deprec": [18, 22, 128, 129, 209, 214, 215, 220, 282, 283, 284, 285, 287, 288, 289, 297, 299, 302, 304, 311, 321, 325, 330, 344, 346, 364, 367, 384, 452, 453, 468, 475, 476, 477, 478, 531, 627, 630, 633, 660, 666, 678, 685], "featur": 18, "automat": [18, 688], "instal": [19, 687, 688], "c": [19, 687], "driver": 19, "bson": [19, 687], "libbson": 19, "platform": 19, "packag": 19, "manag": 19, "build": 19, "prerequisit": 19, "visual": [19, 687, 689], "studio": [19, 687, 689], "mingw": 19, "w64": 19, "msys2": 19, "prepar": 19, "releas": 19, "tarbal": 19, "git": 19, "repositori": 19, "clone": 19, "execut": [19, 687], "gener": 19, "uninstal": 19, "compon": 19, "deal": 19, "integr": 19, "object": 20, "lifecycl": [20, 154, 155, 204, 348, 416, 460, 535], "databas": 20, "collect": 20, "relat": [20, 449], "bucket": 20, "session": 20, "encrypt": [20, 686, 688], "log": 21, "macro": 21, "custom": 21, "handler": 21, "disabl": 21, "trace": 21, "match": 22, "common": 23, "task": 23, "explain": [23, 299, 304], "mongoc_apm_callbacks_destroi": 24, "mongoc_apm_callbacks_new": 25, "return": [25, 27, 28, 29, 31, 32, 33, 34, 35, 36, 37, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 61, 62, 63, 64, 65, 67, 68, 69, 71, 72, 73, 75, 77, 78, 79, 81, 82, 83, 84, 85, 87, 88, 89, 103, 104, 105, 106, 108, 109, 111, 112, 115, 131, 133, 135, 137, 139, 141, 149, 151, 153, 154, 155, 157, 159, 160, 161, 162, 164, 165, 166, 168, 173, 174, 176, 178, 185, 186, 187, 188, 189, 191, 198, 199, 201, 202, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 227, 230, 231, 232, 234, 235, 236, 237, 240, 241, 242, 244, 245, 248, 249, 251, 252, 253, 254, 256, 257, 258, 259, 260, 262, 263, 264, 265, 266, 269, 273, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 288, 289, 290, 291, 295, 296, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 319, 320, 321, 325, 327, 328, 329, 330, 331, 332, 333, 334, 336, 337, 344, 345, 346, 347, 348, 350, 351, 354, 355, 356, 357, 358, 359, 360, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 382, 383, 385, 386, 388, 390, 391, 394, 395, 396, 397, 398, 399, 400, 402, 403, 404, 405, 406, 407, 409, 410, 411, 412, 413, 414, 415, 417, 418, 419, 420, 422, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 435, 436, 439, 440, 441, 442, 446, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 461, 463, 466, 469, 476, 477, 481, 484, 489, 490, 491, 493, 495, 496, 500, 502, 504, 505, 506, 507, 515, 518, 519, 520, 521, 524, 526, 528, 529, 531, 532, 533, 539, 542, 544, 545, 549, 550, 551, 552, 554, 555, 556, 557, 558, 559, 560, 561, 562, 564, 566, 568, 569, 571, 572, 573, 575, 576, 577, 578, 579, 580, 581, 582, 583, 586, 588, 589, 590, 592, 593, 594, 595, 599, 602, 603, 604, 605, 612, 614, 615, 616, 617, 618, 619, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 639, 640, 641, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 658, 661, 663, 664, 666, 667, 668, 669, 670, 671, 672, 677], "mongoc_apm_callbacks_t": 26, "mongoc_apm_command_failed_get_command_nam": 27, "paramet": [27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 61, 62, 63, 64, 65, 67, 68, 69, 71, 72, 73, 74, 75, 77, 78, 79, 81, 82, 83, 84, 85, 87, 88, 89, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 108, 109, 111, 112, 114, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 148, 149, 150, 151, 152, 153, 154, 155, 157, 159, 160, 161, 162, 163, 164, 165, 166, 167, 169, 170, 171, 173, 174, 175, 176, 177, 179, 180, 181, 182, 183, 185, 186, 187, 188, 189, 190, 192, 193, 194, 195, 196, 198, 199, 200, 201, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 382, 383, 385, 386, 387, 388, 389, 390, 391, 392, 393, 395, 396, 397, 398, 399, 400, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 461, 464, 467, 470, 475, 476, 477, 479, 480, 481, 482, 484, 487, 488, 490, 491, 492, 493, 494, 496, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 515, 516, 518, 519, 520, 522, 524, 526, 527, 528, 529, 530, 531, 532, 533, 534, 536, 537, 539, 540, 541, 542, 543, 544, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 566, 568, 569, 570, 571, 572, 573, 575, 576, 577, 578, 579, 580, 581, 582, 583, 586, 588, 589, 590, 591, 592, 593, 594, 595, 597, 599, 600, 601, 602, 603, 604, 606, 607, 608, 609, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 661, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 678, 679, 680, 681, 682, 683, 684], "mongoc_apm_command_failed_get_context": 28, "mongoc_apm_command_failed_get_dur": 29, "mongoc_apm_command_failed_get_error": 30, "mongoc_apm_command_failed_get_host": 31, "mongoc_apm_command_failed_get_operation_id": 32, "mongoc_apm_command_failed_get_repli": 33, "mongoc_apm_command_failed_get_request_id": 34, "mongoc_apm_command_failed_get_server_connection_id": 35, "mongoc_apm_command_failed_get_server_id": 36, "mongoc_apm_command_failed_get_service_id": 37, "mongoc_apm_command_failed_t": 38, "mongoc_apm_command_started_get_command": 39, "mongoc_apm_command_started_get_command_nam": 40, "mongoc_apm_command_started_get_context": 41, "mongoc_apm_command_started_get_database_nam": 42, "mongoc_apm_command_started_get_host": 43, "mongoc_apm_command_started_get_operation_id": 44, "mongoc_apm_command_started_get_request_id": 45, "mongoc_apm_command_started_get_server_connection_id": 46, "mongoc_apm_command_started_get_server_id": 47, "mongoc_apm_command_started_get_service_id": 48, "mongoc_apm_command_started_t": 49, "mongoc_apm_command_succeeded_get_command_nam": 50, "mongoc_apm_command_succeeded_get_context": 51, "mongoc_apm_command_succeeded_get_dur": 52, "mongoc_apm_command_succeeded_get_host": 53, "mongoc_apm_command_succeeded_get_operation_id": 54, "mongoc_apm_command_succeeded_get_repli": 55, "mongoc_apm_command_succeeded_get_request_id": 56, "mongoc_apm_command_succeeded_get_server_connection_id": 57, "mongoc_apm_command_succeeded_get_server_id": 58, "mongoc_apm_command_succeeded_get_service_id": 59, "mongoc_apm_command_succeeded_t": 60, "mongoc_apm_server_changed_get_context": 61, "mongoc_apm_server_changed_get_host": 62, "mongoc_apm_server_changed_get_new_descript": 63, "mongoc_apm_server_changed_get_previous_descript": 64, "mongoc_apm_server_changed_get_topology_id": 65, "mongoc_apm_server_changed_t": 66, "mongoc_apm_server_closed_get_context": 67, "mongoc_apm_server_closed_get_host": 68, "mongoc_apm_server_closed_get_topology_id": 69, "mongoc_apm_server_closed_t": 70, "mongoc_apm_server_heartbeat_failed_get_await": 71, "mongoc_apm_server_heartbeat_failed_get_context": 72, "mongoc_apm_server_heartbeat_failed_get_dur": 73, "mongoc_apm_server_heartbeat_failed_get_error": 74, "mongoc_apm_server_heartbeat_failed_get_host": 75, "mongoc_apm_server_heartbeat_failed_t": 76, "mongoc_apm_server_heartbeat_started_get_await": 77, "mongoc_apm_server_heartbeat_started_get_context": 78, "mongoc_apm_server_heartbeat_started_get_host": 79, "mongoc_apm_server_heartbeat_started_t": 80, "mongoc_apm_server_heartbeat_succeeded_get_await": 81, "mongoc_apm_server_heartbeat_succeeded_get_context": 82, "mongoc_apm_server_heartbeat_succeeded_get_dur": 83, "mongoc_apm_server_heartbeat_succeeded_get_host": 84, "mongoc_apm_server_heartbeat_succeeded_get_repli": 85, "mongoc_apm_server_heartbeat_succeeded_t": 86, "mongoc_apm_server_opening_get_context": 87, "mongoc_apm_server_opening_get_host": 88, "mongoc_apm_server_opening_get_topology_id": 89, "mongoc_apm_server_opening_t": 90, "mongoc_apm_set_command_failed_cb": 91, "mongoc_apm_set_command_started_cb": 92, "mongoc_apm_set_command_succeeded_cb": 93, "mongoc_apm_set_server_changed_cb": 94, "mongoc_apm_set_server_closed_cb": 95, "mongoc_apm_set_server_heartbeat_failed_cb": 96, "mongoc_apm_set_server_heartbeat_started_cb": 97, "mongoc_apm_set_server_heartbeat_succeeded_cb": 98, "mongoc_apm_set_server_opening_cb": 99, "mongoc_apm_set_topology_changed_cb": 100, "mongoc_apm_set_topology_closed_cb": 101, "mongoc_apm_set_topology_opening_cb": 102, "mongoc_apm_topology_changed_get_context": 103, "mongoc_apm_topology_changed_get_new_descript": 104, "mongoc_apm_topology_changed_get_previous_descript": 105, "mongoc_apm_topology_changed_get_topology_id": 106, "mongoc_apm_topology_changed_t": 107, "mongoc_apm_topology_closed_get_context": 108, "mongoc_apm_topology_closed_get_topology_id": 109, "mongoc_apm_topology_closed_t": 110, "mongoc_apm_topology_opening_get_context": 111, "mongoc_apm_topology_opening_get_topology_id": 112, "mongoc_apm_topology_opening_t": 113, "mongoc_auto_encryption_opts_destroi": 114, "mongoc_auto_encryption_opts_new": 115, "mongoc_auto_encryption_opts_set_bypass_auto_encrypt": 116, "mongoc_auto_encryption_opts_set_bypass_query_analysi": 117, "mongoc_auto_encryption_opts_set_encrypted_fields_map": 118, "mongoc_auto_encryption_opts_set_extra": 119, "mongoc_auto_encryption_opts_set_keyvault_cli": 120, "mongoc_auto_encryption_opts_set_keyvault_client_pool": 121, "mongoc_auto_encryption_opts_set_keyvault_namespac": 122, "mongoc_auto_encryption_opts_set_kms_credential_provider_callback": 123, "mongoc_auto_encryption_opts_set_kms_provid": 124, "mongoc_auto_encryption_opts_set_schema_map": 125, "mongoc_auto_encryption_opts_set_tls_opt": 126, "mongoc_auto_encryption_opts_t": 127, "mongoc_bulk_operation_delet": 128, "mongoc_bulk_operation_delete_on": 129, "mongoc_bulk_operation_destroi": 130, "mongoc_bulk_operation_execut": 131, "mongoc_bulk_operation_get_hint": 132, "mongoc_bulk_operation_get_write_concern": 133, "mongoc_bulk_operation_insert": 134, "mongoc_bulk_operation_insert_with_opt": 135, "mongoc_bulk_operation_remov": 136, "mongoc_bulk_operation_remove_many_with_opt": 137, "mongoc_bulk_operation_remove_on": 138, "mongoc_bulk_operation_remove_one_with_opt": 139, "mongoc_bulk_operation_replace_on": 140, "mongoc_bulk_operation_replace_one_with_opt": 141, "mongoc_bulk_operation_set_bypass_document_valid": 142, "mongoc_bulk_operation_set_client_sess": 143, "mongoc_bulk_operation_set_com": 144, "mongoc_bulk_operation_set_hint": 145, "mongoc_bulk_operation_set_let": 146, "mongoc_bulk_operation_t": 147, "mongoc_bulk_operation_upd": 148, "mongoc_bulk_operation_update_many_with_opt": 149, "mongoc_bulk_operation_update_on": 150, "mongoc_bulk_operation_update_one_with_opt": 151, "mongoc_change_stream_destroi": 152, "mongoc_change_stream_error_docu": 153, "mongoc_change_stream_get_resume_token": 154, "mongoc_change_stream_next": 155, "mongoc_change_stream_t": 156, "start": [156, 687], "resum": 156, "mongoc_check_vers": 157, "mongoc_cleanup": 158, "mongoc_client_command": 159, "mongoc_client_command_simpl": 160, "mongoc_client_command_simple_with_server_id": 161, "mongoc_client_command_with_opt": 162, "mongoc_client_destroi": 163, "mongoc_client_enable_auto_encrypt": 164, "mongoc_client_encryption_add_key_alt_nam": 165, "mongoc_client_encryption_create_datakei": 166, "mongoc_client_encryption_datakey_opts_destroi": 167, "mongoc_client_encryption_datakey_opts_new": 168, "mongoc_client_encryption_datakey_opts_set_keyaltnam": 169, "mongoc_client_encryption_datakey_opts_set_keymateri": 170, "mongoc_client_encryption_datakey_opts_set_masterkei": 171, "mongoc_client_encryption_datakey_opts_t": 172, "mongoc_client_decryption_decrypt": 173, "mongoc_client_encryption_delete_kei": 174, "mongoc_client_encryption_destroi": 175, "mongoc_client_encryption_encrypt": 176, "mongoc_client_encryption_encrypt_opts_destroi": 177, "mongoc_client_encryption_encrypt_opts_new": 178, "mongoc_client_encryption_encrypt_opts_set_algorithm": 179, "mongoc_client_encryption_encrypt_opts_set_contention_factor": 180, "mongoc_client_encryption_encrypt_opts_set_keyaltnam": 181, "mongoc_client_encryption_encrypt_opts_set_keyid": 182, "mongoc_client_encryption_encrypt_opts_set_query_typ": 183, "mongoc_client_encryption_encrypt_opts_t": 184, "mongoc_client_encryption_get_crypt_shared_vers": 185, "mongoc_client_encryption_get_kei": [186, 188], "mongoc_client_encryption_get_key_by_alt_nam": 187, "mongoc_client_encryption_new": 189, "mongoc_client_encryption_opts_destroi": 190, "mongoc_client_encryption_opts_new": 191, "mongoc_client_encryption_opts_set_keyvault_cli": 192, "mongoc_client_encryption_opts_set_keyvault_namespac": 193, "mongoc_client_encryption_opts_set_kms_credential_provider_callback": 194, "mongoc_client_encryption_opts_set_kms_provid": 195, "mongoc_client_encryption_opts_set_tls_opt": 196, "mongoc_client_encryption_opts_t": 197, "mongoc_client_encryption_remove_key_alt_nam": 198, "mongoc_client_encryption_rewrap_many_datakei": 199, "mongoc_client_encryption_rewrap_many_datakey_result_destroi": 200, "mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result": 201, "mongoc_client_encryption_rewrap_many_datakey_result_new": 202, "mongoc_client_encryption_rewrap_many_datakey_result_t": 203, "mongoc_client_encryption_t": 204, "thread": [204, 213, 228, 229, 232, 233, 234, 235, 236, 238, 240, 274, 353, 416, 449, 460, 687], "safeti": [204, 228, 229, 232, 233, 234, 235, 236, 238, 240, 274, 353, 416, 449, 460], "mongoc_client_find_databases_with_opt": 205, "mongoc_client_get_collect": 206, "mongoc_client_get_crypt_shared_vers": 207, "mongoc_client_get_databas": 208, "mongoc_client_get_database_nam": 209, "mongoc_client_get_database_names_with_opt": 210, "mongoc_client_get_default_databas": 211, "mongoc_client_get_gridf": 212, "mongoc_client_get_handshake_descript": 213, "behavior": [213, 298], "see": 213, "also": 213, "mongoc_client_get_max_bson_s": 214, "mongoc_client_get_max_message_s": 215, "mongoc_client_get_read_concern": 216, "mongoc_client_get_read_pref": 217, "mongoc_client_get_server_descript": [218, 219], "mongoc_client_get_server_statu": 220, "mongoc_client_get_uri": 221, "mongoc_client_get_write_concern": 222, "mongoc_client_new": 223, "mongoc_client_new_from_uri": 224, "mongoc_client_new_from_uri_with_error": 225, "mongoc_client_pool_destroi": 226, "mongoc_client_pool_enable_auto_encrypt": 227, "mongoc_client_pool_max_s": 228, "mongoc_client_pool_min_s": 229, "mongoc_client_pool_new": 230, "mongoc_client_pool_new_with_error": 231, "mongoc_client_pool_pop": 232, "mongoc_client_pool_push": 233, "mongoc_client_pool_set_apm_callback": 234, "mongoc_client_pool_set_appnam": 235, "mongoc_client_pool_set_error_api": 236, "mongoc_client_pool_set_server_api": 237, "mongoc_client_pool_set_ssl_opt": 238, "avail": [238, 270], "mongoc_client_pool_t": 239, "mongoc_client_pool_try_pop": 240, "mongoc_client_read_command_with_opt": 241, "mongoc_client_read_write_command_with_opt": 242, "mongoc_client_reset": 243, "mongoc_client_select_serv": 244, "mongoc_client_session_abort_transact": 245, "mongoc_client_session_advance_cluster_tim": 246, "mongoc_client_session_advance_operation_tim": 247, "mongoc_client_session_append": 248, "mongoc_client_session_commit_transact": 249, "mongoc_client_session_destroi": 250, "mongoc_client_session_get_cli": 251, "mongoc_client_session_get_cluster_tim": 252, "mongoc_client_session_get_dirti": 253, "mongoc_client_session_get_lsid": 254, "mongoc_client_session_get_operation_tim": 255, "mongoc_client_session_get_opt": 256, "mongoc_client_session_get_server_id": 257, "mongoc_client_session_get_transaction_st": 258, "mongoc_client_session_in_transact": 259, "mongoc_client_session_start_transact": 260, "mongoc_client_session_t": 261, "mongoc_client_session_with_transact": 262, "mongoc_client_session_with_transaction_cb_t": 263, "mongoc_client_set_apm_callback": 264, "mongoc_client_set_appnam": 265, "mongoc_client_set_error_api": 266, "mongoc_client_set_read_concern": 267, "mongoc_client_set_read_pref": 268, "mongoc_client_set_server_api": 269, "mongoc_client_set_ssl_opt": 270, "mongoc_client_set_stream_initi": 271, "mongoc_client_set_write_concern": 272, "mongoc_client_start_sess": 273, "mongoc_client_t": 274, "stream": [274, 585], "mongoc_client_watch": 275, "mongoc_client_write_command_with_opt": 276, "mongoc_collection_aggreg": 277, "other": 277, "mongoc_collection_command": 278, "mongoc_collection_command_simpl": 279, "mongoc_collection_command_with_opt": 280, "mongoc_collection_copi": 281, "mongoc_collection_count": 282, "mongoc_collection_count_docu": 283, "migrat": 283, "count": [283, 687], "mongoc_collection_count_with_opt": 284, "mongoc_collection_create_bulk_oper": 285, "mongoc_collection_create_bulk_operation_with_opt": 286, "mongoc_collection_create_index": 287, "mongoc_collection_create_index_with_opt": 288, "mongoc_collection_delet": 289, "mongoc_collection_delete_mani": 290, "mongoc_collection_delete_on": 291, "mongoc_collection_destroi": 292, "mongoc_collection_drop": 293, "mongoc_collection_drop_index": 294, "mongoc_collection_drop_index_with_opt": 295, "mongoc_collection_drop_with_opt": 296, "mongoc_collection_ensure_index": 297, "mongoc_collection_estimated_document_count": 298, "mongoc_collection_find": 299, "The": [299, 304], "find": [299, 687], "mongoc_collection_find_and_modifi": 300, "mongoc_collection_find_and_modify_with_opt": 301, "mongoc_collection_find_index": 302, "mongoc_collection_find_indexes_with_opt": 303, "mongoc_collection_find_with_opt": 304, "mongoc_collection_get_last_error": 305, "mongoc_collection_get_nam": 306, "mongoc_collection_get_read_concern": 307, "mongoc_collection_get_read_pref": 308, "mongoc_collection_get_write_concern": 309, "mongoc_collection_insert": 310, "mongoc_collection_insert_bulk": 311, "mongoc_collection_insert_mani": 312, "mongoc_collection_insert_on": 313, "mongoc_collection_keys_to_index_str": 314, "mongoc_collection_read_command_with_opt": 315, "mongoc_collection_read_write_command_with_opt": 316, "mongoc_collection_remov": 317, "mongoc_collection_renam": 318, "mongoc_collection_rename_with_opt": 319, "mongoc_collection_replace_on": 320, "mongoc_collection_sav": 321, "mongoc_collection_set_read_concern": 322, "mongoc_collection_set_read_pref": 323, "mongoc_collection_set_write_concern": 324, "mongoc_collection_stat": 325, "mongoc_collection_t": 326, "prefer": [326, 660], "mongoc_collection_upd": 327, "mongoc_collection_update_mani": 328, "mongoc_collection_update_on": 329, "mongoc_collection_valid": 330, "mongoc_collection_watch": 331, "mongoc_collection_write_command_with_opt": 332, "mongoc_cursor_clon": 333, "mongoc_cursor_curr": 334, "mongoc_cursor_destroi": 335, "mongoc_cursor_error": 336, "mongoc_cursor_error_docu": 337, "mongoc_cursor_get_batch_s": 338, "mongoc_cursor_get_hint": 339, "mongoc_cursor_get_host": 340, "mongoc_cursor_get_id": 341, "mongoc_cursor_get_limit": 342, "mongoc_cursor_get_max_await_time_m": 343, "mongoc_cursor_is_al": 344, "mongoc_cursor_mor": 345, "mongoc_cursor_new_from_command_repli": 346, "mongoc_cursor_new_from_command_reply_with_opt": 347, "mongoc_cursor_next": 348, "mongoc_cursor_set_batch_s": 349, "mongoc_cursor_set_hint": 350, "mongoc_cursor_set_limit": 351, "mongoc_cursor_set_max_await_time_m": 352, "mongoc_cursor_t": 353, "mongoc_database_add_us": 354, "mongoc_database_aggreg": 355, "mongoc_database_command": 356, "mongoc_database_command_simpl": 357, "mongoc_database_command_with_opt": 358, "mongoc_database_copi": 359, "mongoc_database_create_collect": 360, "mongoc_database_destroi": 361, "mongoc_database_drop": 362, "mongoc_database_drop_with_opt": 363, "mongoc_database_find_collect": 364, "mongoc_database_find_collections_with_opt": 365, "mongoc_database_get_collect": 366, "mongoc_database_get_collection_nam": 367, "mongoc_database_get_collection_names_with_opt": 368, "mongoc_database_get_nam": 369, "mongoc_database_get_read_concern": 370, "mongoc_database_get_read_pref": 371, "mongoc_database_get_write_concern": 372, "mongoc_database_has_collect": 373, "mongoc_database_read_command_with_opt": 374, "mongoc_database_read_write_command_with_opt": 375, "mongoc_database_remove_all_us": 376, "mongoc_database_remove_us": 377, "mongoc_database_set_read_concern": 378, "mongoc_database_set_read_pref": 379, "mongoc_database_set_write_concern": 380, "mongoc_database_t": 381, "mongoc_database_watch": 382, "mongoc_database_write_command_with_opt": 383, "mongoc_delete_flags_t": 384, "mongoc_error_has_label": 385, "mongoc_find_and_modify_opts_append": 386, "append": [386, 687], "findandmodifi": 386, "mongoc_find_and_modify_opts_destroi": 387, "mongoc_find_and_modify_opts_get_bypass_document_valid": 388, "mongoc_find_and_modify_opts_get_field": 389, "mongoc_find_and_modify_opts_get_flag": 390, "mongoc_find_and_modify_opts_get_max_time_m": 391, "mongoc_find_and_modify_opts_get_sort": 392, "mongoc_find_and_modify_opts_get_upd": 393, "mongoc_find_and_modify_opts_new": 394, "mongoc_find_and_modify_opts_set_bypass_document_valid": 395, "bypassdocumentvalid": 395, "mongoc_find_and_modify_opts_set_field": 396, "field": [396, 688], "mongoc_find_and_modify_opts_set_flag": 397, "flag": [397, 473, 485, 513, 514, 610, 611], "mongoc_find_and_modify_opts_set_max_time_m": 398, "maxtimem": 398, "mongoc_find_and_modify_opts_set_sort": 399, "sort": 399, "mongoc_find_and_modify_opts_set_upd": 400, "updat": [400, 687], "mongoc_find_and_modify_opts_t": 401, "mongoc_get_major_vers": 402, "mongoc_get_micro_vers": 403, "mongoc_get_minor_vers": 404, "mongoc_get_vers": 405, "mongoc_gridfs_bucket_abort_upload": 406, "mongoc_gridfs_bucket_delete_by_id": 407, "mongoc_gridfs_bucket_destroi": 408, "mongoc_gridfs_bucket_download_to_stream": 409, "mongoc_gridfs_bucket_find": 410, "mongoc_gridfs_bucket_new": 411, "mongoc_gridfs_bucket_open_download_stream": 412, "mongoc_gridfs_bucket_open_upload_stream": 413, "mongoc_gridfs_bucket_open_upload_stream_with_id": 414, "mongoc_gridfs_bucket_stream_error": 415, "mongoc_gridfs_bucket_t": 416, "mongoc_gridfs_bucket_upload_from_stream": 417, "mongoc_gridfs_bucket_upload_from_stream_with_id": 418, "mongoc_gridfs_create_fil": 419, "mongoc_gridfs_create_file_from_stream": 420, "mongoc_gridfs_destroi": 421, "mongoc_gridfs_drop": 422, "mongoc_gridfs_file_destroi": 423, "mongoc_gridfs_file_error": 424, "mongoc_gridfs_file_get_alias": 425, "mongoc_gridfs_file_get_chunk_s": 426, "mongoc_gridfs_file_get_content_typ": 427, "mongoc_gridfs_file_get_filenam": 428, "mongoc_gridfs_file_get_id": 429, "mongoc_gridfs_file_get_length": 430, "mongoc_gridfs_file_get_md5": 431, "mongoc_gridfs_file_get_metadata": 432, "mongoc_gridfs_file_get_upload_d": 433, "mongoc_gridfs_file_list_destroi": 434, "mongoc_gridfs_file_list_error": 435, "mongoc_gridfs_file_list_next": 436, "mongoc_gridfs_file_list_t": 437, "mongoc_gridfs_file_opt_t": 438, "mongoc_gridfs_file_readv": 439, "mongoc_gridfs_file_remov": 440, "mongoc_gridfs_file_sav": 441, "mongoc_gridfs_file_seek": 442, "mongoc_gridfs_file_set_alias": 443, "mongoc_gridfs_file_set_content_typ": 444, "mongoc_gridfs_file_set_filenam": 445, "mongoc_gridfs_file_set_id": 446, "mongoc_gridfs_file_set_md5": 447, "mongoc_gridfs_file_set_metadata": 448, "mongoc_gridfs_file_t": 449, "mongoc_gridfs_file_tel": 450, "mongoc_gridfs_file_writev": 451, "mongoc_gridfs_find": 452, "mongoc_gridfs_find_on": 453, "mongoc_gridfs_find_one_by_filenam": 454, "mongoc_gridfs_find_one_with_opt": 455, "mongoc_gridfs_find_with_opt": 456, "mongoc_gridfs_get_chunk": 457, "mongoc_gridfs_get_fil": 458, "mongoc_gridfs_remove_by_filenam": 459, "mongoc_gridfs_t": 460, "mongoc_handshake_data_append": 461, "mongoc_host_list_t": 462, "mongoc_index_opt_geo_get_default": 463, "mongoc_index_opt_geo_init": 464, "mongoc_index_opt_geo_t": 465, "mongoc_index_opt_get_default": 466, "mongoc_index_opt_init": 467, "mongoc_index_opt_t": 468, "mongoc_index_opt_wt_get_default": 469, "mongoc_index_opt_wt_init": 470, "mongoc_index_opt_wt_t": 471, "mongoc_init": 472, "mongoc_insert_flags_t": 473, "valu": [473, 485, 513, 514, 610, 611], "mongoc_iovec_t": 474, "mongoc_matcher_destroi": 475, "mongoc_matcher_match": 476, "mongoc_matcher_new": 477, "mongoc_matcher_t": 478, "mongoc_optional_copi": 479, "mongoc_optional_init": 480, "mongoc_optional_is_set": 481, "mongoc_optional_set_valu": 482, "mongoc_optional_t": 483, "mongoc_optional_valu": 484, "mongoc_query_flags_t": 485, "mongoc_rand": 486, "entropi": 486, "statu": 486, "mongoc_rand_add": 487, "mongoc_rand_se": 488, "mongoc_rand_statu": 489, "mongoc_read_concern_append": 490, "mongoc_read_concern_copi": 491, "mongoc_read_concern_destroi": 492, "mongoc_read_concern_get_level": 493, "mongoc_read_concern_is_default": 494, "mongoc_read_concern_new": 495, "mongoc_read_concern_set_level": 496, "mongoc_read_concern_t": 497, "level": [497, 685, 688], "mongoc_read_mode_t": 498, "mongoc_read_prefs_add_tag": 499, "mongoc_read_prefs_copi": 500, "mongoc_read_prefs_destroi": 501, "mongoc_read_prefs_get_hedg": 502, "mongoc_read_prefs_get_max_staleness_second": 503, "mongoc_read_prefs_get_mod": 504, "mongoc_read_prefs_get_tag": 505, "mongoc_read_prefs_is_valid": 506, "mongoc_read_prefs_new": 507, "mongoc_read_prefs_set_hedg": 508, "mongoc_read_prefs_set_max_staleness_second": 509, "mongoc_read_prefs_set_mod": 510, "mongoc_read_prefs_set_tag": 511, "mongoc_read_prefs_t": 512, "tag": 512, "max": 512, "stale": 512, "hedg": 512, "mongoc_remove_flags_t": 513, "mongoc_reply_flags_t": 514, "mongoc_server_api_copi": 515, "mongoc_server_api_deprecation_error": 516, "mongoc_server_api_destroi": 517, "mongoc_server_api_get_deprecation_error": 518, "mongoc_server_api_get_strict": 519, "mongoc_server_api_get_vers": 520, "mongoc_server_api_new": 521, "mongoc_server_api_strict": 522, "mongoc_server_api_t": 523, "mongoc_server_api_version_from_str": 524, "mongoc_server_api_version_t": 525, "mongoc_server_api_version_to_str": 526, "mongoc_server_description_destroi": 527, "mongoc_server_description_hello_respons": 528, "mongoc_server_description_host": 529, "mongoc_server_description_id": 530, "mongoc_server_description_ismast": 531, "mongoc_server_description_last_update_tim": 532, "mongoc_server_description_new_copi": 533, "mongoc_server_description_round_trip_tim": 534, "mongoc_server_description_t": 535, "mongoc_server_description_typ": 536, "mongoc_server_descriptions_destroy_al": 537, "mongoc_session_opt_t": 538, "mongoc_session_opts_clon": 539, "mongoc_session_opts_destroi": 540, "mongoc_session_opts_get_causal_consist": 541, "mongoc_session_opts_get_default_transaction_opt": 542, "mongoc_session_opts_get_snapshot": 543, "mongoc_session_opts_get_transaction_opt": 544, "mongoc_session_opts_new": 545, "mongoc_session_opts_set_causal_consist": 546, "mongoc_session_opts_set_default_transaction_opt": 547, "mongoc_session_opts_set_snapshot": 548, "mongoc_socket_accept": 549, "mongoc_socket_bind": 550, "mongoc_socket_clos": 551, "mongoc_socket_connect": 552, "mongoc_socket_destroi": 553, "mongoc_socket_errno": 554, "mongoc_socket_getnameinfo": 555, "mongoc_socket_getsocknam": 556, "mongoc_socket_listen": 557, "mongoc_socket_new": 558, "mongoc_socket_recv": 559, "mongoc_socket_send": 560, "mongoc_socket_sendv": 561, "mongoc_socket_setsockopt": 562, "mongoc_socket_t": 563, "mongoc_ssl_opt_get_default": 564, "mongoc_stream_buffered_new": 566, "mongoc_stream_buffered_t": 567, "mongoc_stream_clos": 568, "mongoc_stream_cork": 569, "mongoc_stream_destroi": 570, "mongoc_stream_file_get_fd": 571, "mongoc_stream_file_new": 572, "mongoc_stream_file_new_for_path": 573, "mongoc_stream_file_t": 574, "mongoc_stream_flush": 575, "mongoc_stream_get_base_stream": 576, "mongoc_stream_gridfs_new": 577, "mongoc_stream_read": 578, "mongoc_stream_readv": 579, "mongoc_stream_setsockopt": 580, "mongoc_stream_should_retri": 581, "mongoc_stream_socket_get_socket": 582, "mongoc_stream_socket_new": 583, "mongoc_stream_socket_t": 584, "mongoc_stream_t": 585, "type": 585, "mongoc_stream_timed_out": 586, "mongoc_stream_tls_t": 587, "mongoc_stream_uncork": 588, "mongoc_stream_writ": 589, "mongoc_stream_writev": 590, "mongoc_topology_description_destroi": 591, "mongoc_topology_description_get_serv": 592, "mongoc_topology_description_has_readable_serv": 593, "mongoc_topology_description_has_writable_serv": 594, "mongoc_topology_description_new_copi": 595, "mongoc_topology_description_t": 596, "mongoc_topology_description_typ": 597, "mongoc_transaction_opt_t": 598, "mongoc_transaction_opts_clon": 599, "mongoc_transaction_opts_destroi": 600, "mongoc_transaction_opts_get_max_commit_time_m": 601, "mongoc_transaction_opts_get_read_concern": 602, "mongoc_transaction_opts_get_read_pref": 603, "mongoc_transaction_opts_get_write_concern": 604, "mongoc_transaction_opts_new": 605, "mongoc_transaction_opts_set_max_commit_time_m": 606, "mongoc_transaction_opts_set_read_concern": 607, "mongoc_transaction_opts_set_read_pref": 608, "mongoc_transaction_opts_set_write_concern": 609, "mongoc_transaction_state_t": 610, "mongoc_update_flags_t": 611, "mongoc_uri_copi": 612, "mongoc_uri_destroi": 613, "mongoc_uri_get_auth_mechan": 614, "mongoc_uri_get_auth_sourc": 615, "mongoc_uri_get_compressor": 616, "mongoc_uri_get_databas": 617, "mongoc_uri_get_host": 618, "mongoc_uri_get_mechanism_properti": 619, "mongoc_uri_get_option_as_bool": 620, "mongoc_uri_get_option_as_int32": 621, "mongoc_uri_get_option_as_int64": 622, "mongoc_uri_get_option_as_utf8": 623, "mongoc_uri_get_opt": 624, "mongoc_uri_get_password": 625, "mongoc_uri_get_read_concern": 626, "mongoc_uri_get_read_pref": 627, "mongoc_uri_get_read_prefs_t": 628, "mongoc_uri_get_replica_set": 629, "mongoc_uri_get_servic": 630, "mongoc_uri_get_srv_hostnam": 631, "mongoc_uri_get_srv_service_nam": 632, "mongoc_uri_get_ssl": 633, "mongoc_uri_get_str": 634, "mongoc_uri_get_tl": 635, "mongoc_uri_get_usernam": 636, "mongoc_uri_get_write_concern": 637, "mongoc_uri_has_opt": 638, "mongoc_uri_new": 639, "mongoc_uri_new_for_host_port": 640, "mongoc_uri_new_with_error": 641, "mongoc_uri_option_is_bool": 642, "mongoc_uri_option_is_int32": 643, "mongoc_uri_option_is_int64": 644, "mongoc_uri_option_is_utf8": 645, "mongoc_uri_set_auth_mechan": 646, "mongoc_uri_set_auth_sourc": 647, "mongoc_uri_set_compressor": 648, "mongoc_uri_set_databas": 649, "mongoc_uri_set_mechanism_properti": 650, "mongoc_uri_set_option_as_bool": 651, "mongoc_uri_set_option_as_int32": 652, "mongoc_uri_set_option_as_int64": 653, "mongoc_uri_set_option_as_utf8": 654, "mongoc_uri_set_password": 655, "mongoc_uri_set_read_concern": 656, "mongoc_uri_set_read_prefs_t": 657, "mongoc_uri_set_usernam": 658, "mongoc_uri_set_write_concern": 659, "mongoc_uri_t": 660, "format": 660, "srv": 660, "mechan": 660, "properti": 660, "ssl": 660, "discoveri": 660, "select": 660, "mongoc_uri_unescap": 661, "check": 662, "time": 662, "mongoc_write_concern_append": 663, "mongoc_write_concern_copi": 664, "mongoc_write_concern_destroi": 665, "mongoc_write_concern_get_fsync": 666, "mongoc_write_concern_get_journ": 667, "mongoc_write_concern_get_w": 668, "mongoc_write_concern_get_wmajor": 669, "mongoc_write_concern_get_wtag": 670, "mongoc_write_concern_get_wtimeout": 671, "mongoc_write_concern_get_wtimeout_int64": 672, "mongoc_write_concern_is_acknowledg": 673, "mongoc_write_concern_is_default": 674, "mongoc_write_concern_is_valid": 675, "mongoc_write_concern_journal_is_set": 676, "mongoc_write_concern_new": 677, "mongoc_write_concern_set_fsync": 678, "mongoc_write_concern_set_journ": 679, "mongoc_write_concern_set_w": 680, "mongoc_write_concern_set_wmajor": 681, "mongoc_write_concern_set_wtag": 682, "mongoc_write_concern_set_wtimeout": 683, "mongoc_write_concern_set_wtimeout_int64": 684, "mongoc_write_concern_t": 685, "experiment": 686, "queryabl": 686, "tutori": 687, "content": 687, "includ": 687, "link": [687, 689], "your": 687, "program": 687, "mongoc": 687, "h": 687, "cmake": 687, "pkg": 687, "config": 687, "specifi": 687, "header": 687, "path": 687, "manual": 687, "microsoft": [687, 689], "project": [687, 689], "make": 687, "bcon": 687, "json": 687, "crud": 687, "delet": 687, "next": [687, 689], "step": [687, 689], "libmongocrypt": 688, "mongocryptd": 688, "provid": 688, "local": 688, "rule": 688, "enforc": 688, "explicit": 688, "decrypt": 688, "static": 689}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx": 57}, "alltitles": {"Advanced Connections": [[0, "advanced-connections"]], "Connecting to a Replica Set": [[0, "connecting-to-a-replica-set"]], "Connecting to a Sharded Cluster": [[0, "connecting-to-a-sharded-cluster"]], "Connecting to an IPv6 Address": [[0, "connecting-to-an-ipv6-address"]], "Connecting with IPv4 and IPv6": [[0, "connecting-with-ipv4-and-ipv6"]], "Connecting to a UNIX Domain Socket": [[0, "connecting-to-a-unix-domain-socket"]], "Connecting to a server over TLS": [[0, "connecting-to-a-server-over-tls"]], "Compressing data to and from MongoDB": [[0, "compressing-data-to-and-from-mongodb"]], "Additional Connection Options": [[0, "additional-connection-options"]], "Aggregation Framework Examples": [[1, "aggregation-framework-examples"]], "Requirements": [[1, "requirements"]], "Aggregations using the Zip Codes Data Set": [[1, "id1"]], "States with Populations Over 10 Million": [[1, "states-with-populations-over-10-million"]], "Average City Population by State": [[1, "average-city-population-by-state"]], "API Reference": [[2, "api-reference"]], "Application Performance Monitoring (APM)": [[3, "application-performance-monitoring-apm"]], "Command-Monitoring Example": [[3, "command-monitoring-example"]], "SDAM Monitoring Example": [[3, "sdam-monitoring-example"]], "Functions": [[3, "functions"], [13, "functions"], [26, "functions"], [38, "functions"], [49, "functions"], [60, "functions"], [66, "functions"], [70, "functions"], [76, "functions"], [80, "functions"], [86, "functions"], [90, "functions"], [107, "functions"], [110, "functions"], [113, "functions"], [127, "functions"], [147, "functions"], [156, "functions"], [172, "functions"], [184, "functions"], [197, "functions"], [203, "functions"], [204, "functions"], [239, "functions"], [261, "functions"], [274, "functions"], [326, "functions"], [353, "functions"], [381, "functions"], [401, "functions"], [416, "functions"], [437, "functions"], [438, "functions"], [449, "functions"], [460, "functions"], [465, "functions"], [468, "functions"], [471, "functions"], [478, "functions"], [483, "functions"], [486, "functions"], [497, "functions"], [512, "functions"], [523, "functions"], [525, "functions"], [535, "functions"], [538, "functions"], [563, "functions"], [565, "functions"], [574, "functions"], [584, "functions"], [585, "functions"], [596, "functions"], [598, "functions"], [660, "functions"], [685, "functions"]], "Authentication": [[4, "authentication"]], "Basic Authentication (SCRAM-SHA-256)": [[4, "basic-authentication-scram-sha-256"]], "Basic Authentication (SCRAM-SHA-1)": [[4, "basic-authentication-scram-sha-1"]], "Legacy Authentication (MONGODB-CR)": [[4, "legacy-authentication-mongodb-cr"]], "GSSAPI (Kerberos) Authentication": [[4, "gssapi-kerberos-authentication"]], "SASL Plain Authentication": [[4, "sasl-plain-authentication"]], "X.509 Certificate Authentication": [[4, "x-509-certificate-authentication"]], "Authentication via AWS IAM": [[4, "authentication-via-aws-iam"]], "AWS credentials via URI": [[4, "aws-credentials-via-uri"]], "AWS credentials via environment": [[4, "aws-credentials-via-environment"]], "AWS Credentials via ECS": [[4, "aws-credentials-via-ecs"]], "AWS Credentials via EC2": [[4, "aws-credentials-via-ec2"]], "Basic Troubleshooting": [[5, "basic-troubleshooting"]], "Troubleshooting Checklist": [[5, "troubleshooting-checklist"]], "Performance Counters": [[5, "performance-counters"]], "Submitting a Bug Report": [[5, "submitting-a-bug-report"]], "Bulk Write Operations": [[6, "bulk-write-operations"]], "Bulk Insert": [[6, "bulk-insert"]], "Mixed Bulk Write Operations": [[6, "mixed-bulk-write-operations"]], "Ordered Bulk Write Operations": [[6, "ordered-bulk-write-operations"]], "Unordered Bulk Write Operations": [[6, "unordered-bulk-write-operations"]], "Bulk Operation Bypassing Document Validation": [[6, "bulk-operation-bypassing-document-validation"]], "Bulk Operation Write Concerns": [[6, "bulk-operation-write-concerns"]], "Setting Collation Order": [[6, "setting-collation-order"]], "Unacknowledged Bulk Writes": [[6, "unacknowledged-bulk-writes"]], "Further Reading": [[6, "further-reading"]], "Configuring TLS": [[7, "configuring-tls"]], "Configuration with URI options": [[7, "configuration-with-uri-options"]], "Configuration with mongoc_ssl_opt_t": [[7, "configuration-with-mongoc-ssl-opt-t"]], "Client Authentication": [[7, "client-authentication"]], "Server Certificate Verification": [[7, "server-certificate-verification"]], "Supported Libraries": [[7, "supported-libraries"]], "OpenSSL": [[7, "openssl"]], "LibreSSL / libtls": [[7, "libressl-libtls"]], "Native TLS Support on Windows (Secure Channel)": [[7, "native-tls-support-on-windows-secure-channel"]], "Native TLS Support on macOS / Darwin (Secure Transport)": [[7, "native-tls-support-on-macos-darwin-secure-transport"]], "Connection Pooling": [[8, "connection-pooling"]], "Single Mode": [[8, "single-mode"]], "Pooled Mode": [[8, "pooled-mode"]], "Creating Indexes": [[9, "creating-indexes"]], "Example": [[9, "example"], [156, "example"], [162, "example"], [211, "example"], [239, "example"], [241, "example"], [242, "example"], [248, "example"], [260, "example"], [261, "example"], [262, "example"], [274, "example"], [276, "example"], [277, "example"], [279, "example"], [280, "example"], [282, "example"], [283, "example"], [298, "example"], [299, "example"], [300, "example"], [301, "example"], [315, "example"], [316, "example"], [329, "example"], [332, "example"], [337, "example"], [353, "example"], [355, "example"], [358, "example"], [374, "example"], [375, "example"], [383, "example"], [401, "example"], [416, "example"], [437, "example"], [460, "example"], [468, "example"], [478, "example"], [490, "example"], [540, "example"], [546, "example"], [548, "example"], [598, "example"], [616, "example"], [619, "example"], [648, "example"], [650, "example"], [663, "example"]], "Cursors": [[10, "cursors"]], "Handling Cursor Failures": [[10, "handling-cursor-failures"]], "Destroying Server-Side Cursors": [[10, "destroying-server-side-cursors"]], "Tailable Cursors": [[10, "tailable-cursors"]], "Aids for Debugging": [[11, "aids-for-debugging"]], "GDB": [[11, "gdb"]], "LLDB": [[11, "lldb"]], "Debug assertions": [[11, "debug-assertions"]], "\u201cdistinct\u201d and \u201cmapReduce\u201d": [[12, "distinct-and-mapreduce"]], "Setup": [[12, "setup"], [23, "setup"]], "\u201cdistinct\u201d command": [[12, "distinct-command"]], "\u201cmapReduce\u201d - basic example": [[12, "mapreduce-basic-example"]], "\u201cmapReduce\u201d - more complicated example": [[12, "mapreduce-more-complicated-example"]], "Running the Examples": [[12, "running-the-examples"], [23, "running-the-examples"]], "Error Reporting": [[13, "error-reporting"]], "Description": [[13, "description"], [132, "description"], [133, "description"], [142, "description"], [144, "description"], [145, "description"], [146, "description"], [158, "description"], [159, "description"], [170, "description"], [171, "description"], [209, "description"], [213, "description"], [243, "description"], [248, "description"], [253, "description"], [277, "description"], [279, "description"], [281, "description"], [282, "description"], [283, "description"], [284, "description"], [285, "description"], [286, "description"], [288, "description"], [289, "description"], [290, "description"], [291, "description"], [292, "description"], [293, "description"], [294, "description"], [295, "description"], [296, "description"], [298, "description"], [299, "description"], [300, "description"], [301, "description"], [304, "description"], [305, "description"], [306, "description"], [307, "description"], [308, "description"], [309, "description"], [310, "description"], [311, "description"], [312, "description"], [313, "description"], [314, "description"], [317, "description"], [318, "description"], [319, "description"], [320, "description"], [321, "description"], [322, "description"], [323, "description"], [324, "description"], [325, "description"], [327, "description"], [328, "description"], [329, "description"], [330, "description"], [333, "description"], [334, "description"], [335, "description"], [336, "description"], [337, "description"], [338, "description"], [339, "description"], [340, "description"], [341, "description"], [342, "description"], [343, "description"], [345, "description"], [346, "description"], [347, "description"], [348, "description"], [349, "description"], [350, "description"], [351, "description"], [352, "description"], [355, "description"], [356, "description"], [359, "description"], [360, "description"], [362, "description"], [363, "description"], [364, "description"], [367, "description"], [386, "description"], [387, "description"], [389, "description"], [392, "description"], [393, "description"], [395, "description"], [396, "description"], [397, "description"], [398, "description"], [399, "description"], [400, "description"], [406, "description"], [407, "description"], [408, "description"], [409, "description"], [410, "description"], [411, "description"], [412, "description"], [413, "description"], [414, "description"], [415, "description"], [416, "description"], [417, "description"], [418, "description"], [419, "description"], [420, "description"], [421, "description"], [422, "description"], [423, "description"], [424, "description"], [425, "description"], [426, "description"], [427, "description"], [428, "description"], [429, "description"], [430, "description"], [431, "description"], [432, "description"], [433, "description"], [434, "description"], [435, "description"], [436, "description"], [437, "description"], [438, "description"], [439, "description"], [440, "description"], [441, "description"], [442, "description"], [443, "description"], [444, "description"], [445, "description"], [446, "description"], [447, "description"], [448, "description"], [449, "description"], [450, "description"], [451, "description"], [452, "description"], [453, "description"], [454, "description"], [455, "description"], [456, "description"], [457, "description"], [458, "description"], [459, "description"], [460, "description"], [461, "description"], [462, "description"], [464, "description"], [465, "description"], [467, "description"], [468, "description"], [470, "description"], [471, "description"], [472, "description"], [473, "description"], [485, "description"], [486, "description"], [487, "description"], [488, "description"], [489, "description"], [490, "description"], [491, "description"], [492, "description"], [493, "description"], [494, "description"], [496, "description"], [498, "description"], [499, "description"], [500, "description"], [501, "description"], [502, "description"], [503, "description"], [504, "description"], [505, "description"], [506, "description"], [507, "description"], [508, "description"], [509, "description"], [510, "description"], [511, "description"], [513, "description"], [514, "description"], [527, "description"], [528, "description"], [529, "description"], [530, "description"], [531, "description"], [532, "description"], [533, "description"], [534, "description"], [536, "description"], [549, "description"], [550, "description"], [551, "description"], [552, "description"], [553, "description"], [554, "description"], [555, "description"], [556, "description"], [557, "description"], [558, "description"], [559, "description"], [560, "description"], [561, "description"], [562, "description"], [565, "description"], [567, "description"], [591, "description"], [595, "description"], [597, "description"], [610, "description"], [611, "description"], [612, "description"], [613, "description"], [614, "description"], [615, "description"], [616, "description"], [617, "description"], [618, "description"], [619, "description"], [620, "description"], [621, "description"], [622, "description"], [623, "description"], [624, "description"], [625, "description"], [626, "description"], [627, "description"], [628, "description"], [629, "description"], [631, "description"], [632, "description"], [633, "description"], [634, "description"], [635, "description"], [636, "description"], [637, "description"], [638, "description"], [639, "description"], [640, "description"], [641, "description"], [642, "description"], [643, "description"], [644, "description"], [645, "description"], [646, "description"], [647, "description"], [648, "description"], [649, "description"], [650, "description"], [651, "description"], [652, "description"], [653, "description"], [654, "description"], [655, "description"], [656, "description"], [657, "description"], [658, "description"], [659, "description"], [660, "description"], [661, "description"], [662, "description"], [663, "description"], [664, "description"], [665, "description"], [666, "description"], [667, "description"], [668, "description"], [669, "description"], [670, "description"], [671, "description"], [672, "description"], [673, "description"], [674, "description"], [675, "description"], [676, "description"], [678, "description"], [679, "description"], [680, "description"], [681, "description"], [682, "description"], [683, "description"], [684, "description"]], "Error Labels": [[13, "error-labels"]], "TransientTransactionError": [[13, "transienttransactionerror"]], "UnknownTransactionCommitResult": [[13, "unknowntransactioncommitresult"]], "Setting the Error API Version": [[13, "setting-the-error-api-version"]], "Index": [[14, "index"]], "GridFS": [[15, "gridfs"]], "Guides": [[16, "guides"]], "libmongoc": [[17, "libmongoc"]], "Introduction": [[17, "introduction"]], "Initialization and cleanup": [[18, "initialization-and-cleanup"]], "Synopsis": [[18, "synopsis"], [21, "synopsis"], [24, "synopsis"], [25, "synopsis"], [26, "synopsis"], [27, "synopsis"], [28, "synopsis"], [29, "synopsis"], [30, "synopsis"], [31, "synopsis"], [32, "synopsis"], [33, "synopsis"], [34, "synopsis"], [35, "synopsis"], [36, "synopsis"], [37, "synopsis"], [38, "synopsis"], [39, "synopsis"], [40, "synopsis"], [41, "synopsis"], [42, "synopsis"], [43, "synopsis"], [44, "synopsis"], [45, "synopsis"], [46, "synopsis"], [47, "synopsis"], [48, "synopsis"], [49, "synopsis"], [50, "synopsis"], [51, "synopsis"], [52, "synopsis"], [53, "synopsis"], [54, "synopsis"], [55, "synopsis"], [56, "synopsis"], [57, "synopsis"], [58, "synopsis"], [59, "synopsis"], [60, "synopsis"], [61, "synopsis"], [62, "synopsis"], [63, "synopsis"], [64, "synopsis"], [65, "synopsis"], [66, "synopsis"], [67, "synopsis"], [68, "synopsis"], [69, "synopsis"], [70, "synopsis"], [71, "synopsis"], [72, "synopsis"], [73, "synopsis"], [74, "synopsis"], [75, "synopsis"], [76, "synopsis"], [77, "synopsis"], [78, "synopsis"], [79, "synopsis"], [80, "synopsis"], [81, "synopsis"], [82, "synopsis"], [83, "synopsis"], [84, "synopsis"], [85, "synopsis"], [86, "synopsis"], [87, "synopsis"], [88, "synopsis"], [89, "synopsis"], [90, "synopsis"], [91, "synopsis"], [92, "synopsis"], [93, "synopsis"], [94, "synopsis"], [95, "synopsis"], [96, "synopsis"], [97, "synopsis"], [98, "synopsis"], [99, "synopsis"], [100, "synopsis"], [101, "synopsis"], [102, "synopsis"], [103, "synopsis"], [104, "synopsis"], [105, "synopsis"], [106, "synopsis"], [107, "synopsis"], [108, "synopsis"], [109, "synopsis"], [110, "synopsis"], [111, "synopsis"], [112, "synopsis"], [113, "synopsis"], [114, "synopsis"], [115, "synopsis"], [116, "synopsis"], [117, "synopsis"], [118, "synopsis"], [119, "synopsis"], [120, "synopsis"], [121, "synopsis"], [122, "synopsis"], [123, "synopsis"], [124, "synopsis"], [125, "synopsis"], [126, "synopsis"], [127, "synopsis"], [128, "synopsis"], [129, "synopsis"], [130, "synopsis"], [131, "synopsis"], [132, "synopsis"], [133, "synopsis"], [134, "synopsis"], [135, "synopsis"], [136, "synopsis"], [137, "synopsis"], [138, "synopsis"], [139, "synopsis"], [140, "synopsis"], [141, "synopsis"], [142, "synopsis"], [143, "synopsis"], [144, "synopsis"], [145, "synopsis"], [146, "synopsis"], [147, "synopsis"], [148, "synopsis"], [149, "synopsis"], [150, "synopsis"], [151, "synopsis"], [152, "synopsis"], [153, "synopsis"], [154, "synopsis"], [155, "synopsis"], [156, "synopsis"], [157, "synopsis"], [158, "synopsis"], [159, "synopsis"], [160, "synopsis"], [161, "synopsis"], [162, "synopsis"], [163, "synopsis"], [164, "synopsis"], [165, "synopsis"], [166, "synopsis"], [167, "synopsis"], [168, "synopsis"], [169, "synopsis"], [170, "synopsis"], [171, "synopsis"], [172, "synopsis"], [173, "synopsis"], [174, "synopsis"], [175, "synopsis"], [176, "synopsis"], [177, "synopsis"], [178, "synopsis"], [179, "synopsis"], [180, "synopsis"], [181, "synopsis"], [182, "synopsis"], [183, "synopsis"], [184, "synopsis"], [185, "synopsis"], [186, "synopsis"], [187, "synopsis"], [188, "synopsis"], [189, "synopsis"], [190, "synopsis"], [191, "synopsis"], [192, "synopsis"], [193, "synopsis"], [194, "synopsis"], [195, "synopsis"], [196, "synopsis"], [197, "synopsis"], [198, "synopsis"], [199, "synopsis"], [200, "synopsis"], [201, "synopsis"], [202, "synopsis"], [203, "synopsis"], [204, "synopsis"], [205, "synopsis"], [206, "synopsis"], [207, "synopsis"], [208, "synopsis"], [209, "synopsis"], [210, "synopsis"], [211, "synopsis"], [212, "synopsis"], [213, "synopsis"], [214, "synopsis"], [215, "synopsis"], [216, "synopsis"], [217, "synopsis"], [218, "synopsis"], [219, "synopsis"], [220, "synopsis"], [221, "synopsis"], [222, "synopsis"], [223, "synopsis"], [224, "synopsis"], [225, "synopsis"], [226, "synopsis"], [227, "synopsis"], [228, "synopsis"], [229, "synopsis"], [230, "synopsis"], [231, "synopsis"], [232, "synopsis"], [233, "synopsis"], [234, "synopsis"], [235, "synopsis"], [236, "synopsis"], [237, "synopsis"], [238, "synopsis"], [239, "synopsis"], [240, "synopsis"], [241, "synopsis"], [242, "synopsis"], [243, "synopsis"], [244, "synopsis"], [245, "synopsis"], [246, "synopsis"], [247, "synopsis"], [248, "synopsis"], [249, "synopsis"], [250, "synopsis"], [251, "synopsis"], [252, "synopsis"], [253, "synopsis"], [254, "synopsis"], [255, "synopsis"], [256, "synopsis"], [257, "synopsis"], [258, "synopsis"], [259, "synopsis"], [260, "synopsis"], [261, "synopsis"], [262, "synopsis"], [263, "synopsis"], [264, "synopsis"], [265, "synopsis"], [266, "synopsis"], [267, "synopsis"], [268, "synopsis"], [269, "synopsis"], [270, "synopsis"], [271, "synopsis"], [272, "synopsis"], [273, "synopsis"], [274, "synopsis"], [275, "synopsis"], [276, "synopsis"], [277, "synopsis"], [278, "synopsis"], [279, "synopsis"], [280, "synopsis"], [281, "synopsis"], [282, "synopsis"], [283, "synopsis"], [284, "synopsis"], [285, "synopsis"], [286, "synopsis"], [287, "synopsis"], [288, "synopsis"], [289, "synopsis"], [290, "synopsis"], [291, "synopsis"], [292, "synopsis"], [293, "synopsis"], [294, "synopsis"], [295, "synopsis"], [296, "synopsis"], [297, "synopsis"], [298, "synopsis"], [299, "synopsis"], [300, "synopsis"], [301, "synopsis"], [302, "synopsis"], [303, "synopsis"], [304, "synopsis"], [305, "synopsis"], [306, "synopsis"], [307, "synopsis"], [308, "synopsis"], [309, "synopsis"], [310, "synopsis"], [311, "synopsis"], [312, "synopsis"], [313, "synopsis"], [314, "synopsis"], [315, "synopsis"], [316, "synopsis"], [317, "synopsis"], [318, "synopsis"], [319, "synopsis"], [320, "synopsis"], [321, "synopsis"], [322, "synopsis"], [323, "synopsis"], [324, "synopsis"], [325, "synopsis"], [326, "synopsis"], [327, "synopsis"], [328, "synopsis"], [329, "synopsis"], [330, "synopsis"], [331, "synopsis"], [332, "synopsis"], [333, "synopsis"], [334, "synopsis"], [335, "synopsis"], [336, "synopsis"], [337, "synopsis"], [338, "synopsis"], [339, "synopsis"], [340, "synopsis"], [341, "synopsis"], [342, "synopsis"], [343, "synopsis"], [344, "synopsis"], [345, "synopsis"], [346, "synopsis"], [347, "synopsis"], [348, "synopsis"], [349, "synopsis"], [350, "synopsis"], [351, "synopsis"], [352, "synopsis"], [353, "synopsis"], [354, "synopsis"], [355, "synopsis"], [356, "synopsis"], [357, "synopsis"], [358, "synopsis"], [359, "synopsis"], [360, "synopsis"], [361, "synopsis"], [362, "synopsis"], [363, "synopsis"], [364, "synopsis"], [365, "synopsis"], [366, "synopsis"], [367, "synopsis"], [368, "synopsis"], [369, "synopsis"], [370, "synopsis"], [371, "synopsis"], [372, "synopsis"], [373, "synopsis"], [374, "synopsis"], [375, "synopsis"], [376, "synopsis"], [377, "synopsis"], [378, "synopsis"], [379, "synopsis"], [380, "synopsis"], [381, "synopsis"], [382, "synopsis"], [383, "synopsis"], [384, "synopsis"], [385, "synopsis"], [386, "synopsis"], [387, "synopsis"], [388, "synopsis"], [389, "synopsis"], [390, "synopsis"], [391, "synopsis"], [392, "synopsis"], [393, "synopsis"], [394, "synopsis"], [395, "synopsis"], [396, "synopsis"], [397, "synopsis"], [398, "synopsis"], [399, "synopsis"], [400, "synopsis"], [401, "synopsis"], [402, "synopsis"], [403, "synopsis"], [404, "synopsis"], [405, "synopsis"], [406, "synopsis"], [407, "synopsis"], [408, "synopsis"], [409, "synopsis"], [410, "synopsis"], [411, "synopsis"], [412, "synopsis"], [413, "synopsis"], [414, "synopsis"], [415, "synopsis"], [416, "synopsis"], [417, "synopsis"], [418, "synopsis"], [419, "synopsis"], [420, "synopsis"], [421, "synopsis"], [422, "synopsis"], [423, "synopsis"], [424, "synopsis"], [425, "synopsis"], [426, "synopsis"], [427, "synopsis"], [428, "synopsis"], [429, "synopsis"], [430, "synopsis"], [431, "synopsis"], [432, "synopsis"], [433, "synopsis"], [434, "synopsis"], [435, "synopsis"], [436, "synopsis"], [437, "synopsis"], [438, "synopsis"], [439, "synopsis"], [440, "synopsis"], [441, "synopsis"], [442, "synopsis"], [443, "synopsis"], [444, "synopsis"], [445, "synopsis"], [446, "synopsis"], [447, "synopsis"], [448, "synopsis"], [449, "synopsis"], [450, "synopsis"], [451, "synopsis"], [452, "synopsis"], [453, "synopsis"], [454, "synopsis"], [455, "synopsis"], [456, "synopsis"], [457, "synopsis"], [458, "synopsis"], [459, "synopsis"], [460, "synopsis"], [461, "synopsis"], [462, "synopsis"], [463, "synopsis"], [464, "synopsis"], [465, "synopsis"], [466, "synopsis"], [467, "synopsis"], [468, "synopsis"], [469, "synopsis"], [470, "synopsis"], [471, "synopsis"], [472, "synopsis"], [473, "synopsis"], [474, "synopsis"], [474, "id1"], [475, "synopsis"], [476, "synopsis"], [477, "synopsis"], [478, "synopsis"], [479, "synopsis"], [480, "synopsis"], [481, "synopsis"], [482, "synopsis"], [483, "synopsis"], [484, "synopsis"], [485, "synopsis"], [486, "synopsis"], [487, "synopsis"], [488, "synopsis"], [489, "synopsis"], [490, "synopsis"], [491, "synopsis"], [492, "synopsis"], [493, "synopsis"], [494, "synopsis"], [495, "synopsis"], [496, "synopsis"], [497, "synopsis"], [498, "synopsis"], [499, "synopsis"], [500, "synopsis"], [501, "synopsis"], [502, "synopsis"], [503, "synopsis"], [504, "synopsis"], [505, "synopsis"], [506, "synopsis"], [507, "synopsis"], [508, "synopsis"], [509, "synopsis"], [510, "synopsis"], [511, "synopsis"], [512, "synopsis"], [513, "synopsis"], [514, "synopsis"], [515, "synopsis"], [516, "synopsis"], [517, "synopsis"], [518, "synopsis"], [519, "synopsis"], [520, "synopsis"], [521, "synopsis"], [522, "synopsis"], [523, "synopsis"], [524, "synopsis"], [525, "synopsis"], [526, "synopsis"], [527, "synopsis"], [528, "synopsis"], [529, "synopsis"], [530, "synopsis"], [531, "synopsis"], [532, "synopsis"], [533, "synopsis"], [534, "synopsis"], [535, "synopsis"], [536, "synopsis"], [537, "synopsis"], [538, "synopsis"], [539, "synopsis"], [540, "synopsis"], [541, "synopsis"], [542, "synopsis"], [543, "synopsis"], [544, "synopsis"], [545, "synopsis"], [546, "synopsis"], [547, "synopsis"], [548, "synopsis"], [549, "synopsis"], [550, "synopsis"], [551, "synopsis"], [552, "synopsis"], [553, "synopsis"], [554, "synopsis"], [555, "synopsis"], [556, "synopsis"], [557, "synopsis"], [558, "synopsis"], [559, "synopsis"], [560, "synopsis"], [561, "synopsis"], [562, "synopsis"], [563, "synopsis"], [563, "id1"], [564, "synopsis"], [565, "synopsis"], [566, "synopsis"], [567, "synopsis"], [568, "synopsis"], [569, "synopsis"], [570, "synopsis"], [571, "synopsis"], [572, "synopsis"], [573, "synopsis"], [574, "synopsis"], [575, "synopsis"], [576, "synopsis"], [577, "synopsis"], [578, "synopsis"], [579, "synopsis"], [580, "synopsis"], [581, "synopsis"], [582, "synopsis"], [583, "synopsis"], [584, "synopsis"], [585, "synopsis"], [586, "synopsis"], [587, "synopsis"], [588, "synopsis"], [589, "synopsis"], [590, "synopsis"], [591, "synopsis"], [592, "synopsis"], [593, "synopsis"], [594, "synopsis"], [595, "synopsis"], [596, "synopsis"], [597, "synopsis"], [598, "synopsis"], [599, "synopsis"], [600, "synopsis"], [601, "synopsis"], [602, "synopsis"], [603, "synopsis"], [604, "synopsis"], [605, "synopsis"], [606, "synopsis"], [607, "synopsis"], [608, "synopsis"], [609, "synopsis"], [610, "synopsis"], [611, "synopsis"], [612, "synopsis"], [613, "synopsis"], [614, "synopsis"], [615, "synopsis"], [616, "synopsis"], [617, "synopsis"], [618, "synopsis"], [619, "synopsis"], [620, "synopsis"], [621, "synopsis"], [622, "synopsis"], [623, "synopsis"], [624, "synopsis"], [625, "synopsis"], [626, "synopsis"], [627, "synopsis"], [628, "synopsis"], [629, "synopsis"], [630, "synopsis"], [631, "synopsis"], [632, "synopsis"], [633, "synopsis"], [634, "synopsis"], [635, "synopsis"], [636, "synopsis"], [637, "synopsis"], [638, "synopsis"], [639, "synopsis"], [640, "synopsis"], [641, "synopsis"], [642, "synopsis"], [643, "synopsis"], [644, "synopsis"], [645, "synopsis"], [646, "synopsis"], [647, "synopsis"], [648, "synopsis"], [649, "synopsis"], [650, "synopsis"], [651, "synopsis"], [652, "synopsis"], [653, "synopsis"], [654, "synopsis"], [655, "synopsis"], [656, "synopsis"], [657, "synopsis"], [658, "synopsis"], [659, "synopsis"], [660, "synopsis"], [661, "synopsis"], [663, "synopsis"], [664, "synopsis"], [665, "synopsis"], [666, "synopsis"], [667, "synopsis"], [668, "synopsis"], [669, "synopsis"], [670, "synopsis"], [671, "synopsis"], [672, "synopsis"], [673, "synopsis"], [674, "synopsis"], [675, "synopsis"], [676, "synopsis"], [677, "synopsis"], [678, "synopsis"], [679, "synopsis"], [680, "synopsis"], [681, "synopsis"], [682, "synopsis"], [683, "synopsis"], [684, "synopsis"], [685, "synopsis"]], "Deprecated feature: automatic initialization and cleanup": [[18, "deprecated-feature-automatic-initialization-and-cleanup"]], "Installing the MongoDB C Driver (libmongoc) and BSON library (libbson)": [[19, "installing-the-mongodb-c-driver-libmongoc-and-bson-library-libbson"]], "Supported Platforms": [[19, "supported-platforms"]], "Install libmongoc with a Package Manager": [[19, "install-libmongoc-with-a-package-manager"]], "Install libbson with a Package Manager": [[19, "install-libbson-with-a-package-manager"]], "Build environment": [[19, "build-environment"]], "Build environment on Unix": [[19, "build-environment-on-unix"]], "Prerequisites for libmongoc": [[19, "prerequisites-for-libmongoc"]], "Prerequisites for libbson": [[19, "prerequisites-for-libbson"]], "Build environment on macOS": [[19, "build-environment-on-macos"]], "Build environment on Windows with Visual Studio": [[19, "build-environment-on-windows-with-visual-studio"]], "Build environment on Windows with MinGW-W64 and MSYS2": [[19, "build-environment-on-windows-with-mingw-w64-and-msys2"]], "Configuring the build": [[19, "configuring-the-build"]], "Preparing a build from a release tarball": [[19, "preparing-a-build-from-a-release-tarball"]], "Preparing a build from a git repository clone": [[19, "preparing-a-build-from-a-git-repository-clone"]], "Preparing a build on Windows with Visual Studio": [[19, "preparing-a-build-on-windows-with-visual-studio"]], "Executing a build": [[19, "executing-a-build"]], "Building on Unix, macOS, and Windows (MinGW-W64 and MSYS2)": [[19, "building-on-unix-macos-and-windows-mingw-w64-and-msys2"]], "Building on Windows with Visual Studio": [[19, "building-on-windows-with-visual-studio"]], "Generating the documentation": [[19, "generating-the-documentation"]], "Uninstalling the installed components": [[19, "uninstalling-the-installed-components"]], "Dealing with Build Failures": [[19, "dealing-with-build-failures"]], "Additional Options for Integrators": [[19, "additional-options-for-integrators"]], "Object Lifecycle": [[20, "object-lifecycle"]], "Clients and pools": [[20, "clients-and-pools"]], "Databases, collections, and related objects": [[20, "databases-collections-and-related-objects"]], "GridFS objects": [[20, "gridfs-objects"]], "GridFS bucket objects": [[20, "gridfs-bucket-objects"]], "Sessions": [[20, "sessions"]], "Client Side Encryption": [[20, "client-side-encryption"]], "Logging": [[21, "logging"]], "Macros": [[21, "macros"]], "Custom Log Handlers": [[21, "custom-log-handlers"]], "Disable logging": [[21, "disable-logging"]], "Tracing": [[21, "tracing"]], "Client Side Document Matching": [[22, "client-side-document-matching"]], "Basic Document Matching (Deprecated)": [[22, "basic-document-matching-deprecated"]], "Common Tasks": [[23, "common-tasks"]], "\u201cexplain\u201d Command": [[23, "explain-command"]], "mongoc_apm_callbacks_destroy()": [[24, "mongoc-apm-callbacks-destroy"]], "mongoc_apm_callbacks_new()": [[25, "mongoc-apm-callbacks-new"]], "Returns": [[25, "returns"], [27, "returns"], [28, "returns"], [29, "returns"], [31, "returns"], [32, "returns"], [33, "returns"], [34, "returns"], [35, "returns"], [36, "returns"], [37, "returns"], [39, "returns"], [40, "returns"], [41, "returns"], [42, "returns"], [43, "returns"], [44, "returns"], [45, "returns"], [46, "returns"], [47, "returns"], [48, "returns"], [50, "returns"], [51, "returns"], [52, "returns"], [53, "returns"], [54, "returns"], [55, "returns"], [56, "returns"], [57, "returns"], [58, "returns"], [59, "returns"], [61, "returns"], [62, "returns"], [63, "returns"], [64, "returns"], [65, "returns"], [67, "returns"], [68, "returns"], [69, "returns"], [71, "returns"], [72, "returns"], [73, "returns"], [75, "returns"], [77, "returns"], [78, "returns"], [79, "returns"], [81, "returns"], [82, "returns"], [83, "returns"], [84, "returns"], [85, "returns"], [87, "returns"], [88, "returns"], [89, "returns"], [103, "returns"], [104, "returns"], [105, "returns"], [106, "returns"], [108, "returns"], [109, "returns"], [111, "returns"], [112, "returns"], [115, "returns"], [131, "returns"], [133, "returns"], [135, "returns"], [137, "returns"], [139, "returns"], [141, "returns"], [149, "returns"], [151, "returns"], [153, "returns"], [154, "returns"], [155, "returns"], [157, "returns"], [159, "returns"], [160, "returns"], [161, "returns"], [162, "returns"], [164, "returns"], [165, "returns"], [166, "returns"], [168, "returns"], [173, "returns"], [174, "returns"], [176, "returns"], [178, "returns"], [185, "returns"], [186, "returns"], [187, "returns"], [188, "returns"], [189, "returns"], [191, "returns"], [198, "returns"], [199, "returns"], [201, "returns"], [202, "returns"], [205, "returns"], [206, "returns"], [207, "returns"], [208, "returns"], [209, "returns"], [210, "returns"], [211, "returns"], [212, "returns"], [213, "returns"], [214, "returns"], [215, "returns"], [216, "returns"], [217, "returns"], [218, "returns"], [219, "returns"], [220, "returns"], [221, "returns"], [222, "returns"], [223, "returns"], [224, "returns"], [225, "returns"], [227, "returns"], [230, "returns"], [231, "returns"], [232, "returns"], [234, "returns"], [235, "returns"], [236, "returns"], [237, "returns"], [240, "returns"], [241, "returns"], [242, "returns"], [244, "returns"], [248, "returns"], [251, "returns"], [252, "returns"], [253, "returns"], [254, "returns"], [256, "returns"], [257, "returns"], [264, "returns"], [265, "returns"], [266, "returns"], [269, "returns"], [273, "returns"], [275, "returns"], [276, "returns"], [277, "returns"], [278, "returns"], [279, "returns"], [280, "returns"], [281, "returns"], [282, "returns"], [283, "returns"], [284, "returns"], [285, "returns"], [286, "returns"], [288, "returns"], [289, "returns"], [290, "returns"], [291, "returns"], [295, "returns"], [296, "returns"], [298, "returns"], [299, "returns"], [300, "returns"], [301, "returns"], [302, "returns"], [303, "returns"], [304, "returns"], [305, "returns"], [306, "returns"], [307, "returns"], [308, "returns"], [309, "returns"], [310, "returns"], [311, "returns"], [312, "returns"], [313, "returns"], [314, "returns"], [315, "returns"], [316, "returns"], [317, "returns"], [319, "returns"], [320, "returns"], [321, "returns"], [325, "returns"], [327, "returns"], [328, "returns"], [329, "returns"], [330, "returns"], [331, "returns"], [332, "returns"], [333, "returns"], [334, "returns"], [336, "returns"], [337, "returns"], [344, "returns"], [345, "returns"], [346, "returns"], [347, "returns"], [348, "returns"], [350, "returns"], [351, "returns"], [354, "returns"], [355, "returns"], [356, "returns"], [357, "returns"], [358, "returns"], [359, "returns"], [360, "returns"], [363, "returns"], [364, "returns"], [365, "returns"], [366, "returns"], [367, "returns"], [368, "returns"], [369, "returns"], [370, "returns"], [371, "returns"], [372, "returns"], [373, "returns"], [374, "returns"], [375, "returns"], [376, "returns"], [377, "returns"], [382, "returns"], [383, "returns"], [385, "returns"], [386, "returns"], [388, "returns"], [390, "returns"], [391, "returns"], [394, "returns"], [395, "returns"], [396, "returns"], [397, "returns"], [398, "returns"], [399, "returns"], [400, "returns"], [402, "returns"], [403, "returns"], [404, "returns"], [405, "returns"], [406, "returns"], [407, "returns"], [409, "returns"], [410, "returns"], [411, "returns"], [412, "returns"], [413, "returns"], [414, "returns"], [415, "returns"], [417, "returns"], [418, "returns"], [419, "returns"], [420, "returns"], [422, "returns"], [424, "returns"], [425, "returns"], [426, "returns"], [427, "returns"], [428, "returns"], [429, "returns"], [430, "returns"], [431, "returns"], [432, "returns"], [433, "returns"], [435, "returns"], [436, "returns"], [439, "returns"], [440, "returns"], [441, "returns"], [442, "returns"], [446, "returns"], [450, "returns"], [451, "returns"], [452, "returns"], [453, "returns"], [454, "returns"], [455, "returns"], [456, "returns"], [457, "returns"], [458, "returns"], [459, "returns"], [461, "returns"], [463, "returns"], [466, "returns"], [469, "returns"], [476, "returns"], [477, "returns"], [481, "returns"], [484, "returns"], [489, "returns"], [490, "returns"], [491, "returns"], [493, "returns"], [495, "returns"], [496, "returns"], [500, "returns"], [502, "returns"], [504, "returns"], [505, "returns"], [506, "returns"], [507, "returns"], [515, "returns"], [518, "returns"], [519, "returns"], [520, "returns"], [521, "returns"], [524, "returns"], [526, "returns"], [528, "returns"], [529, "returns"], [531, "returns"], [532, "returns"], [533, "returns"], [539, "returns"], [542, "returns"], [544, "returns"], [545, "returns"], [549, "returns"], [550, "returns"], [551, "returns"], [552, "returns"], [554, "returns"], [555, "returns"], [556, "returns"], [557, "returns"], [558, "returns"], [559, "returns"], [560, "returns"], [561, "returns"], [562, "returns"], [564, "returns"], [566, "returns"], [568, "returns"], [569, "returns"], [571, "returns"], [572, "returns"], [573, "returns"], [575, "returns"], [576, "returns"], [577, "returns"], [578, "returns"], [579, "returns"], [580, "returns"], [581, "returns"], [582, "returns"], [583, "returns"], [586, "returns"], [588, "returns"], [589, "returns"], [590, "returns"], [592, "returns"], [593, "returns"], [594, "returns"], [595, "returns"], [599, "returns"], [602, "returns"], [603, "returns"], [604, "returns"], [605, "returns"], [612, "returns"], [614, "returns"], [615, "returns"], [616, "returns"], [617, "returns"], [618, "returns"], [619, "returns"], [624, "returns"], [625, "returns"], [626, "returns"], [627, "returns"], [628, "returns"], [629, "returns"], [630, "returns"], [631, "returns"], [632, "returns"], [633, "returns"], [634, "returns"], [635, "returns"], [636, "returns"], [637, "returns"], [639, "returns"], [640, "returns"], [641, "returns"], [646, "returns"], [647, "returns"], [648, "returns"], [649, "returns"], [650, "returns"], [651, "returns"], [652, "returns"], [653, "returns"], [654, "returns"], [655, "returns"], [658, "returns"], [661, "returns"], [663, "returns"], [664, "returns"], [666, "returns"], [667, "returns"], [668, "returns"], [669, "returns"], [670, "returns"], [671, "returns"], [672, "returns"], [677, "returns"]], "mongoc_apm_callbacks_t": [[26, "mongoc-apm-callbacks-t"]], "mongoc_apm_command_failed_get_command_name()": [[27, "mongoc-apm-command-failed-get-command-name"]], "Parameters": [[27, "parameters"], [28, "parameters"], [29, "parameters"], [30, "parameters"], [31, "parameters"], [32, "parameters"], [33, "parameters"], [34, "parameters"], [35, "parameters"], [36, "parameters"], [37, "parameters"], [39, "parameters"], [40, "parameters"], [41, "parameters"], [42, "parameters"], [43, "parameters"], [44, "parameters"], [45, "parameters"], [46, "parameters"], [47, "parameters"], [48, "parameters"], [50, "parameters"], [51, "parameters"], [52, "parameters"], [53, "parameters"], [54, "parameters"], [55, "parameters"], [56, "parameters"], [57, "parameters"], [58, "parameters"], [59, "parameters"], [61, "parameters"], [62, "parameters"], [63, "parameters"], [64, "parameters"], [65, "parameters"], [67, "parameters"], [68, "parameters"], [69, "parameters"], [71, "parameters"], [72, "parameters"], [73, "parameters"], [74, "parameters"], [75, "parameters"], [77, "parameters"], [78, "parameters"], [79, "parameters"], [81, "parameters"], [82, "parameters"], [83, "parameters"], [84, "parameters"], [85, "parameters"], [87, "parameters"], [88, "parameters"], [89, "parameters"], [91, "parameters"], [92, "parameters"], [93, "parameters"], [94, "parameters"], [95, "parameters"], [96, "parameters"], [97, "parameters"], [98, "parameters"], [99, "parameters"], [100, "parameters"], [101, "parameters"], [102, "parameters"], [103, "parameters"], [104, "parameters"], [105, "parameters"], [106, "parameters"], [108, "parameters"], [109, "parameters"], [111, "parameters"], [112, "parameters"], [114, "parameters"], [116, "parameters"], [117, "parameters"], [118, "parameters"], [119, "parameters"], [120, "parameters"], [121, "parameters"], [122, "parameters"], [123, "parameters"], [124, "parameters"], [125, "parameters"], [126, "parameters"], [128, "parameters"], [129, "parameters"], [130, "parameters"], [131, "parameters"], [132, "parameters"], [133, "parameters"], [134, "parameters"], [135, "parameters"], [136, "parameters"], [137, "parameters"], [138, "parameters"], [139, "parameters"], [140, "parameters"], [141, "parameters"], [142, "parameters"], [143, "parameters"], [144, "parameters"], [145, "parameters"], [146, "parameters"], [148, "parameters"], [149, "parameters"], [150, "parameters"], [151, "parameters"], [152, "parameters"], [153, "parameters"], [154, "parameters"], [155, "parameters"], [157, "parameters"], [159, "parameters"], [160, "parameters"], [161, "parameters"], [162, "parameters"], [163, "parameters"], [164, "parameters"], [165, "parameters"], [166, "parameters"], [167, "parameters"], [169, "parameters"], [170, "parameters"], [171, "parameters"], [173, "parameters"], [174, "parameters"], [175, "parameters"], [176, "parameters"], [177, "parameters"], [179, "parameters"], [180, "parameters"], [181, "parameters"], [182, "parameters"], [183, "parameters"], [185, "parameters"], [186, "parameters"], [187, "parameters"], [188, "parameters"], [189, "parameters"], [190, "parameters"], [192, "parameters"], [193, "parameters"], [194, "parameters"], [195, "parameters"], [196, "parameters"], [198, "parameters"], [199, "parameters"], [200, "parameters"], [201, "parameters"], [205, "parameters"], [206, "parameters"], [207, "parameters"], [208, "parameters"], [209, "parameters"], [210, "parameters"], [211, "parameters"], [212, "parameters"], [213, "parameters"], [214, "parameters"], [215, "parameters"], [216, "parameters"], [217, "parameters"], [218, "parameters"], [219, "parameters"], [220, "parameters"], [221, "parameters"], [222, "parameters"], [223, "parameters"], [224, "parameters"], [225, "parameters"], [226, "parameters"], [227, "parameters"], [228, "parameters"], [229, "parameters"], [230, "parameters"], [231, "parameters"], [232, "parameters"], [233, "parameters"], [234, "parameters"], [235, "parameters"], [236, "parameters"], [237, "parameters"], [238, "parameters"], [240, "parameters"], [241, "parameters"], [242, "parameters"], [243, "parameters"], [244, "parameters"], [245, "parameters"], [246, "parameters"], [247, "parameters"], [248, "parameters"], [249, "parameters"], [250, "parameters"], [251, "parameters"], [252, "parameters"], [253, "parameters"], [254, "parameters"], [255, "parameters"], [256, "parameters"], [257, "parameters"], [258, "parameters"], [259, "parameters"], [260, "parameters"], [262, "parameters"], [263, "parameters"], [264, "parameters"], [265, "parameters"], [266, "parameters"], [267, "parameters"], [268, "parameters"], [269, "parameters"], [270, "parameters"], [271, "parameters"], [272, "parameters"], [273, "parameters"], [275, "parameters"], [276, "parameters"], [277, "parameters"], [278, "parameters"], [279, "parameters"], [280, "parameters"], [281, "parameters"], [282, "parameters"], [283, "parameters"], [284, "parameters"], [285, "parameters"], [286, "parameters"], [287, "parameters"], [288, "parameters"], [289, "parameters"], [290, "parameters"], [291, "parameters"], [292, "parameters"], [293, "parameters"], [294, "parameters"], [295, "parameters"], [296, "parameters"], [297, "parameters"], [298, "parameters"], [299, "parameters"], [300, "parameters"], [301, "parameters"], [302, "parameters"], [303, "parameters"], [304, "parameters"], [305, "parameters"], [306, "parameters"], [307, "parameters"], [308, "parameters"], [309, "parameters"], [310, "parameters"], [311, "parameters"], [312, "parameters"], [313, "parameters"], [314, "parameters"], [315, "parameters"], [316, "parameters"], [317, "parameters"], [318, "parameters"], [319, "parameters"], [320, "parameters"], [321, "parameters"], [322, "parameters"], [323, "parameters"], [324, "parameters"], [325, "parameters"], [327, "parameters"], [328, "parameters"], [329, "parameters"], [330, "parameters"], [331, "parameters"], [332, "parameters"], [333, "parameters"], [334, "parameters"], [335, "parameters"], [336, "parameters"], [337, "parameters"], [338, "parameters"], [339, "parameters"], [340, "parameters"], [341, "parameters"], [342, "parameters"], [343, "parameters"], [344, "parameters"], [345, "parameters"], [346, "parameters"], [347, "parameters"], [348, "parameters"], [349, "parameters"], [350, "parameters"], [351, "parameters"], [352, "parameters"], [354, "parameters"], [355, "parameters"], [356, "parameters"], [357, "parameters"], [358, "parameters"], [359, "parameters"], [360, "parameters"], [361, "parameters"], [362, "parameters"], [363, "parameters"], [364, "parameters"], [365, "parameters"], [367, "parameters"], [368, "parameters"], [369, "parameters"], [370, "parameters"], [371, "parameters"], [372, "parameters"], [373, "parameters"], [374, "parameters"], [375, "parameters"], [376, "parameters"], [377, "parameters"], [378, "parameters"], [379, "parameters"], [380, "parameters"], [382, "parameters"], [383, "parameters"], [385, "parameters"], [386, "parameters"], [387, "parameters"], [388, "parameters"], [389, "parameters"], [390, "parameters"], [391, "parameters"], [392, "parameters"], [393, "parameters"], [395, "parameters"], [396, "parameters"], [397, "parameters"], [398, "parameters"], [399, "parameters"], [400, "parameters"], [406, "parameters"], [407, "parameters"], [408, "parameters"], [409, "parameters"], [410, "parameters"], [411, "parameters"], [412, "parameters"], [413, "parameters"], [414, "parameters"], [415, "parameters"], [417, "parameters"], [418, "parameters"], [419, "parameters"], [420, "parameters"], [421, "parameters"], [422, "parameters"], [423, "parameters"], [424, "parameters"], [425, "parameters"], [426, "parameters"], [427, "parameters"], [428, "parameters"], [429, "parameters"], [430, "parameters"], [431, "parameters"], [432, "parameters"], [433, "parameters"], [434, "parameters"], [435, "parameters"], [436, "parameters"], [439, "parameters"], [440, "parameters"], [441, "parameters"], [442, "parameters"], [443, "parameters"], [444, "parameters"], [445, "parameters"], [446, "parameters"], [447, "parameters"], [448, "parameters"], [450, "parameters"], [451, "parameters"], [452, "parameters"], [453, "parameters"], [454, "parameters"], [455, "parameters"], [456, "parameters"], [457, "parameters"], [458, "parameters"], [459, "parameters"], [461, "parameters"], [464, "parameters"], [467, "parameters"], [470, "parameters"], [475, "parameters"], [476, "parameters"], [477, "parameters"], [479, "parameters"], [480, "parameters"], [481, "parameters"], [482, "parameters"], [484, "parameters"], [487, "parameters"], [488, "parameters"], [490, "parameters"], [491, "parameters"], [492, "parameters"], [493, "parameters"], [494, "parameters"], [496, "parameters"], [499, "parameters"], [500, "parameters"], [501, "parameters"], [502, "parameters"], [503, "parameters"], [504, "parameters"], [505, "parameters"], [506, "parameters"], [507, "parameters"], [508, "parameters"], [509, "parameters"], [510, "parameters"], [511, "parameters"], [515, "parameters"], [516, "parameters"], [518, "parameters"], [519, "parameters"], [520, "parameters"], [522, "parameters"], [524, "parameters"], [526, "parameters"], [527, "parameters"], [528, "parameters"], [529, "parameters"], [530, "parameters"], [531, "parameters"], [532, "parameters"], [533, "parameters"], [534, "parameters"], [536, "parameters"], [537, "parameters"], [539, "parameters"], [540, "parameters"], [541, "parameters"], [542, "parameters"], [543, "parameters"], [544, "parameters"], [546, "parameters"], [547, "parameters"], [548, "parameters"], [549, "parameters"], [550, "parameters"], [551, "parameters"], [552, "parameters"], [553, "parameters"], [554, "parameters"], [555, "parameters"], [556, "parameters"], [557, "parameters"], [558, "parameters"], [559, "parameters"], [560, "parameters"], [561, "parameters"], [562, "parameters"], [566, "parameters"], [568, "parameters"], [569, "parameters"], [570, "parameters"], [571, "parameters"], [572, "parameters"], [573, "parameters"], [575, "parameters"], [576, "parameters"], [577, "parameters"], [578, "parameters"], [579, "parameters"], [580, "parameters"], [581, "parameters"], [582, "parameters"], [583, "parameters"], [586, "parameters"], [588, "parameters"], [589, "parameters"], [590, "parameters"], [591, "parameters"], [592, "parameters"], [593, "parameters"], [594, "parameters"], [595, "parameters"], [597, "parameters"], [599, "parameters"], [600, "parameters"], [601, "parameters"], [602, "parameters"], [603, "parameters"], [604, "parameters"], [606, "parameters"], [607, "parameters"], [608, "parameters"], [609, "parameters"], [612, "parameters"], [613, "parameters"], [614, "parameters"], [615, "parameters"], [616, "parameters"], [617, "parameters"], [618, "parameters"], [619, "parameters"], [620, "parameters"], [621, "parameters"], [622, "parameters"], [623, "parameters"], [624, "parameters"], [625, "parameters"], [626, "parameters"], [627, "parameters"], [628, "parameters"], [629, "parameters"], [630, "parameters"], [631, "parameters"], [632, "parameters"], [633, "parameters"], [634, "parameters"], [635, "parameters"], [636, "parameters"], [637, "parameters"], [638, "parameters"], [639, "parameters"], [640, "parameters"], [641, "parameters"], [642, "parameters"], [643, "parameters"], [644, "parameters"], [645, "parameters"], [646, "parameters"], [647, "parameters"], [648, "parameters"], [649, "parameters"], [650, "parameters"], [651, "parameters"], [652, "parameters"], [653, "parameters"], [654, "parameters"], [655, "parameters"], [656, "parameters"], [657, "parameters"], [658, "parameters"], [659, "parameters"], [661, "parameters"], [663, "parameters"], [664, "parameters"], [665, "parameters"], [666, "parameters"], [667, "parameters"], [668, "parameters"], [669, "parameters"], [670, "parameters"], [671, "parameters"], [672, "parameters"], [673, "parameters"], [674, "parameters"], [675, "parameters"], [676, "parameters"], [678, "parameters"], [679, "parameters"], [680, "parameters"], [681, "parameters"], [682, "parameters"], [683, "parameters"], [684, "parameters"]], "mongoc_apm_command_failed_get_context()": [[28, "mongoc-apm-command-failed-get-context"]], "mongoc_apm_command_failed_get_duration()": [[29, "mongoc-apm-command-failed-get-duration"]], "mongoc_apm_command_failed_get_error()": [[30, "mongoc-apm-command-failed-get-error"]], "mongoc_apm_command_failed_get_host()": [[31, "mongoc-apm-command-failed-get-host"]], "mongoc_apm_command_failed_get_operation_id()": [[32, "mongoc-apm-command-failed-get-operation-id"]], "mongoc_apm_command_failed_get_reply()": [[33, "mongoc-apm-command-failed-get-reply"]], "mongoc_apm_command_failed_get_request_id()": [[34, "mongoc-apm-command-failed-get-request-id"]], "mongoc_apm_command_failed_get_server_connection_id()": [[35, "mongoc-apm-command-failed-get-server-connection-id"]], "mongoc_apm_command_failed_get_server_id()": [[36, "mongoc-apm-command-failed-get-server-id"]], "mongoc_apm_command_failed_get_service_id()": [[37, "mongoc-apm-command-failed-get-service-id"]], "mongoc_apm_command_failed_t": [[38, "mongoc-apm-command-failed-t"]], "mongoc_apm_command_started_get_command()": [[39, "mongoc-apm-command-started-get-command"]], "mongoc_apm_command_started_get_command_name()": [[40, "mongoc-apm-command-started-get-command-name"]], "mongoc_apm_command_started_get_context()": [[41, "mongoc-apm-command-started-get-context"]], "mongoc_apm_command_started_get_database_name()": [[42, "mongoc-apm-command-started-get-database-name"]], "mongoc_apm_command_started_get_host()": [[43, "mongoc-apm-command-started-get-host"]], "mongoc_apm_command_started_get_operation_id()": [[44, "mongoc-apm-command-started-get-operation-id"]], "mongoc_apm_command_started_get_request_id()": [[45, "mongoc-apm-command-started-get-request-id"]], "mongoc_apm_command_started_get_server_connection_id()": [[46, "mongoc-apm-command-started-get-server-connection-id"]], "mongoc_apm_command_started_get_server_id()": [[47, "mongoc-apm-command-started-get-server-id"]], "mongoc_apm_command_started_get_service_id()": [[48, "mongoc-apm-command-started-get-service-id"]], "mongoc_apm_command_started_t": [[49, "mongoc-apm-command-started-t"]], "mongoc_apm_command_succeeded_get_command_name()": [[50, "mongoc-apm-command-succeeded-get-command-name"]], "mongoc_apm_command_succeeded_get_context()": [[51, "mongoc-apm-command-succeeded-get-context"]], "mongoc_apm_command_succeeded_get_duration()": [[52, "mongoc-apm-command-succeeded-get-duration"]], "mongoc_apm_command_succeeded_get_host()": [[53, "mongoc-apm-command-succeeded-get-host"]], "mongoc_apm_command_succeeded_get_operation_id()": [[54, "mongoc-apm-command-succeeded-get-operation-id"]], "mongoc_apm_command_succeeded_get_reply()": [[55, "mongoc-apm-command-succeeded-get-reply"]], "mongoc_apm_command_succeeded_get_request_id()": [[56, "mongoc-apm-command-succeeded-get-request-id"]], "mongoc_apm_command_succeeded_get_server_connection_id()": [[57, "mongoc-apm-command-succeeded-get-server-connection-id"]], "mongoc_apm_command_succeeded_get_server_id()": [[58, "mongoc-apm-command-succeeded-get-server-id"]], "mongoc_apm_command_succeeded_get_service_id()": [[59, "mongoc-apm-command-succeeded-get-service-id"]], "mongoc_apm_command_succeeded_t": [[60, "mongoc-apm-command-succeeded-t"]], "mongoc_apm_server_changed_get_context()": [[61, "mongoc-apm-server-changed-get-context"]], "mongoc_apm_server_changed_get_host()": [[62, "mongoc-apm-server-changed-get-host"]], "mongoc_apm_server_changed_get_new_description()": [[63, "mongoc-apm-server-changed-get-new-description"]], "mongoc_apm_server_changed_get_previous_description()": [[64, "mongoc-apm-server-changed-get-previous-description"]], "mongoc_apm_server_changed_get_topology_id()": [[65, "mongoc-apm-server-changed-get-topology-id"]], "mongoc_apm_server_changed_t": [[66, "mongoc-apm-server-changed-t"]], "mongoc_apm_server_closed_get_context()": [[67, "mongoc-apm-server-closed-get-context"]], "mongoc_apm_server_closed_get_host()": [[68, "mongoc-apm-server-closed-get-host"]], "mongoc_apm_server_closed_get_topology_id()": [[69, "mongoc-apm-server-closed-get-topology-id"]], "mongoc_apm_server_closed_t": [[70, "mongoc-apm-server-closed-t"]], "mongoc_apm_server_heartbeat_failed_get_awaited()": [[71, "mongoc-apm-server-heartbeat-failed-get-awaited"]], "mongoc_apm_server_heartbeat_failed_get_context()": [[72, "mongoc-apm-server-heartbeat-failed-get-context"]], "mongoc_apm_server_heartbeat_failed_get_duration()": [[73, "mongoc-apm-server-heartbeat-failed-get-duration"]], "mongoc_apm_server_heartbeat_failed_get_error()": [[74, "mongoc-apm-server-heartbeat-failed-get-error"]], "mongoc_apm_server_heartbeat_failed_get_host()": [[75, "mongoc-apm-server-heartbeat-failed-get-host"]], "mongoc_apm_server_heartbeat_failed_t": [[76, "mongoc-apm-server-heartbeat-failed-t"]], "mongoc_apm_server_heartbeat_started_get_awaited()": [[77, "mongoc-apm-server-heartbeat-started-get-awaited"]], "mongoc_apm_server_heartbeat_started_get_context()": [[78, "mongoc-apm-server-heartbeat-started-get-context"]], "mongoc_apm_server_heartbeat_started_get_host()": [[79, "mongoc-apm-server-heartbeat-started-get-host"]], "mongoc_apm_server_heartbeat_started_t": [[80, "mongoc-apm-server-heartbeat-started-t"]], "mongoc_apm_server_heartbeat_succeeded_get_awaited()": [[81, "mongoc-apm-server-heartbeat-succeeded-get-awaited"]], "mongoc_apm_server_heartbeat_succeeded_get_context()": [[82, "mongoc-apm-server-heartbeat-succeeded-get-context"]], "mongoc_apm_server_heartbeat_succeeded_get_duration()": [[83, "mongoc-apm-server-heartbeat-succeeded-get-duration"]], "mongoc_apm_server_heartbeat_succeeded_get_host()": [[84, "mongoc-apm-server-heartbeat-succeeded-get-host"]], "mongoc_apm_server_heartbeat_succeeded_get_reply()": [[85, "mongoc-apm-server-heartbeat-succeeded-get-reply"]], "mongoc_apm_server_heartbeat_succeeded_t": [[86, "mongoc-apm-server-heartbeat-succeeded-t"]], "mongoc_apm_server_opening_get_context()": [[87, "mongoc-apm-server-opening-get-context"]], "mongoc_apm_server_opening_get_host()": [[88, "mongoc-apm-server-opening-get-host"]], "mongoc_apm_server_opening_get_topology_id()": [[89, "mongoc-apm-server-opening-get-topology-id"]], "mongoc_apm_server_opening_t": [[90, "mongoc-apm-server-opening-t"]], "mongoc_apm_set_command_failed_cb()": [[91, "mongoc-apm-set-command-failed-cb"]], "mongoc_apm_set_command_started_cb()": [[92, "mongoc-apm-set-command-started-cb"]], "mongoc_apm_set_command_succeeded_cb()": [[93, "mongoc-apm-set-command-succeeded-cb"]], "mongoc_apm_set_server_changed_cb()": [[94, "mongoc-apm-set-server-changed-cb"]], "mongoc_apm_set_server_closed_cb()": [[95, "mongoc-apm-set-server-closed-cb"]], "mongoc_apm_set_server_heartbeat_failed_cb()": [[96, "mongoc-apm-set-server-heartbeat-failed-cb"]], "mongoc_apm_set_server_heartbeat_started_cb()": [[97, "mongoc-apm-set-server-heartbeat-started-cb"]], "mongoc_apm_set_server_heartbeat_succeeded_cb()": [[98, "mongoc-apm-set-server-heartbeat-succeeded-cb"]], "mongoc_apm_set_server_opening_cb()": [[99, "mongoc-apm-set-server-opening-cb"]], "mongoc_apm_set_topology_changed_cb()": [[100, "mongoc-apm-set-topology-changed-cb"]], "mongoc_apm_set_topology_closed_cb()": [[101, "mongoc-apm-set-topology-closed-cb"]], "mongoc_apm_set_topology_opening_cb()": [[102, "mongoc-apm-set-topology-opening-cb"]], "mongoc_apm_topology_changed_get_context()": [[103, "mongoc-apm-topology-changed-get-context"]], "mongoc_apm_topology_changed_get_new_description()": [[104, "mongoc-apm-topology-changed-get-new-description"]], "mongoc_apm_topology_changed_get_previous_description()": [[105, "mongoc-apm-topology-changed-get-previous-description"]], "mongoc_apm_topology_changed_get_topology_id()": [[106, "mongoc-apm-topology-changed-get-topology-id"]], "mongoc_apm_topology_changed_t": [[107, "mongoc-apm-topology-changed-t"]], "mongoc_apm_topology_closed_get_context()": [[108, "mongoc-apm-topology-closed-get-context"]], "mongoc_apm_topology_closed_get_topology_id()": [[109, "mongoc-apm-topology-closed-get-topology-id"]], "mongoc_apm_topology_closed_t": [[110, "mongoc-apm-topology-closed-t"]], "mongoc_apm_topology_opening_get_context()": [[111, "mongoc-apm-topology-opening-get-context"]], "mongoc_apm_topology_opening_get_topology_id()": [[112, "mongoc-apm-topology-opening-get-topology-id"]], "mongoc_apm_topology_opening_t": [[113, "mongoc-apm-topology-opening-t"]], "mongoc_auto_encryption_opts_destroy()": [[114, "mongoc-auto-encryption-opts-destroy"]], "mongoc_auto_encryption_opts_new()": [[115, "mongoc-auto-encryption-opts-new"]], "mongoc_auto_encryption_opts_set_bypass_auto_encryption()": [[116, "mongoc-auto-encryption-opts-set-bypass-auto-encryption"]], "mongoc_auto_encryption_opts_set_bypass_query_analysis()": [[117, "mongoc-auto-encryption-opts-set-bypass-query-analysis"]], "mongoc_auto_encryption_opts_set_encrypted_fields_map()": [[118, "mongoc-auto-encryption-opts-set-encrypted-fields-map"]], "mongoc_auto_encryption_opts_set_extra()": [[119, "mongoc-auto-encryption-opts-set-extra"]], "mongoc_auto_encryption_opts_set_keyvault_client()": [[120, "mongoc-auto-encryption-opts-set-keyvault-client"]], "mongoc_auto_encryption_opts_set_keyvault_client_pool()": [[121, "mongoc-auto-encryption-opts-set-keyvault-client-pool"]], "mongoc_auto_encryption_opts_set_keyvault_namespace()": [[122, "mongoc-auto-encryption-opts-set-keyvault-namespace"]], "mongoc_auto_encryption_opts_set_kms_credential_provider_callback()": [[123, "mongoc-auto-encryption-opts-set-kms-credential-provider-callback"]], "mongoc_auto_encryption_opts_set_kms_providers()": [[124, "mongoc-auto-encryption-opts-set-kms-providers"]], "mongoc_auto_encryption_opts_set_schema_map()": [[125, "mongoc-auto-encryption-opts-set-schema-map"]], "mongoc_auto_encryption_opts_set_tls_opts()": [[126, "mongoc-auto-encryption-opts-set-tls-opts"]], "mongoc_auto_encryption_opts_t": [[127, "mongoc-auto-encryption-opts-t"]], "mongoc_bulk_operation_delete()": [[128, "mongoc-bulk-operation-delete"]], "Deprecated": [[128, "deprecated"], [129, "deprecated"], [209, "deprecated"], [214, "deprecated"], [215, "deprecated"], [220, "deprecated"], [282, "deprecated"], [284, "deprecated"], [285, "deprecated"], [287, "deprecated"], [288, "deprecated"], [289, "deprecated"], [297, "deprecated"], [299, "deprecated"], [302, "deprecated"], [311, "deprecated"], [321, "deprecated"], [325, "deprecated"], [330, "deprecated"], [344, "deprecated"], [346, "deprecated"], [364, "deprecated"], [367, "deprecated"], [384, "deprecated"], [452, "deprecated"], [453, "deprecated"], [468, "deprecated"], [475, "deprecated"], [476, "deprecated"], [477, "deprecated"], [478, "deprecated"], [531, "deprecated"], [627, "deprecated"], [630, "deprecated"], [633, "deprecated"], [666, "deprecated"], [678, "deprecated"]], "Errors": [[128, "errors"], [129, "errors"], [131, "errors"], [134, "errors"], [135, "errors"], [136, "errors"], [137, "errors"], [138, "errors"], [139, "errors"], [140, "errors"], [141, "errors"], [148, "errors"], [149, "errors"], [151, "errors"], [160, "errors"], [162, "errors"], [205, "errors"], [209, "errors"], [210, "errors"], [212, "errors"], [220, "errors"], [241, "errors"], [242, "errors"], [273, "errors"], [276, "errors"], [279, "errors"], [280, "errors"], [282, "errors"], [283, "errors"], [284, "errors"], [285, "errors"], [286, "errors"], [288, "errors"], [289, "errors"], [290, "errors"], [291, "errors"], [295, "errors"], [296, "errors"], [297, "errors"], [298, "errors"], [300, "errors"], [301, "errors"], [302, "errors"], [303, "errors"], [310, "errors"], [311, "errors"], [312, "errors"], [313, "errors"], [315, "errors"], [316, "errors"], [317, "errors"], [319, "errors"], [320, "errors"], [321, "errors"], [325, "errors"], [327, "errors"], [328, "errors"], [329, "errors"], [330, "errors"], [332, "errors"], [336, "errors"], [337, "errors"], [354, "errors"], [357, "errors"], [358, "errors"], [360, "errors"], [363, "errors"], [364, "errors"], [365, "errors"], [367, "errors"], [368, "errors"], [373, "errors"], [374, "errors"], [375, "errors"], [376, "errors"], [377, "errors"], [383, "errors"], [422, "errors"], [424, "errors"], [435, "errors"], [440, "errors"], [442, "errors"], [453, "errors"], [454, "errors"], [455, "errors"], [459, "errors"], [477, "errors"]], "mongoc_bulk_operation_delete_one()": [[129, "mongoc-bulk-operation-delete-one"]], "mongoc_bulk_operation_destroy()": [[130, "mongoc-bulk-operation-destroy"]], "mongoc_bulk_operation_execute()": [[131, "mongoc-bulk-operation-execute"]], "mongoc_bulk_operation_get_hint()": [[132, "mongoc-bulk-operation-get-hint"]], "mongoc_bulk_operation_get_write_concern()": [[133, "mongoc-bulk-operation-get-write-concern"]], "mongoc_bulk_operation_insert()": [[134, "mongoc-bulk-operation-insert"]], "mongoc_bulk_operation_insert_with_opts()": [[135, "mongoc-bulk-operation-insert-with-opts"]], "mongoc_bulk_operation_remove()": [[136, "mongoc-bulk-operation-remove"]], "mongoc_bulk_operation_remove_many_with_opts()": [[137, "mongoc-bulk-operation-remove-many-with-opts"]], "mongoc_bulk_operation_remove_one()": [[138, "mongoc-bulk-operation-remove-one"]], "mongoc_bulk_operation_remove_one_with_opts()": [[139, "mongoc-bulk-operation-remove-one-with-opts"]], "mongoc_bulk_operation_replace_one()": [[140, "mongoc-bulk-operation-replace-one"]], "mongoc_bulk_operation_replace_one_with_opts()": [[141, "mongoc-bulk-operation-replace-one-with-opts"]], "mongoc_bulk_operation_set_bypass_document_validation()": [[142, "mongoc-bulk-operation-set-bypass-document-validation"]], "mongoc_bulk_operation_set_client_session()": [[143, "mongoc-bulk-operation-set-client-session"]], "mongoc_bulk_operation_set_comment()": [[144, "mongoc-bulk-operation-set-comment"]], "mongoc_bulk_operation_set_hint()": [[145, "mongoc-bulk-operation-set-hint"]], "mongoc_bulk_operation_set_let()": [[146, "mongoc-bulk-operation-set-let"]], "mongoc_bulk_operation_t": [[147, "mongoc-bulk-operation-t"]], "mongoc_bulk_operation_update()": [[148, "mongoc-bulk-operation-update"]], "mongoc_bulk_operation_update_many_with_opts()": [[149, "mongoc-bulk-operation-update-many-with-opts"]], "mongoc_bulk_operation_update_one()": [[150, "mongoc-bulk-operation-update-one"]], "mongoc_bulk_operation_update_one_with_opts()": [[151, "mongoc-bulk-operation-update-one-with-opts"]], "mongoc_change_stream_destroy()": [[152, "mongoc-change-stream-destroy"]], "mongoc_change_stream_error_document()": [[153, "mongoc-change-stream-error-document"]], "mongoc_change_stream_get_resume_token()": [[154, "mongoc-change-stream-get-resume-token"]], "Lifecycle": [[154, "lifecycle"], [155, "lifecycle"], [204, "lifecycle"], [348, "lifecycle"], [416, "lifecycle"], [460, "lifecycle"], [535, "lifecycle"]], "mongoc_change_stream_next()": [[155, "mongoc-change-stream-next"]], "mongoc_change_stream_t": [[156, "mongoc-change-stream-t"]], "Starting and Resuming": [[156, "starting-and-resuming"]], "mongoc_check_version()": [[157, "mongoc-check-version"]], "mongoc_cleanup()": [[158, "mongoc-cleanup"]], "mongoc_client_command()": [[159, "mongoc-client-command"]], "mongoc_client_command_simple()": [[160, "mongoc-client-command-simple"]], "mongoc_client_command_simple_with_server_id()": [[161, "mongoc-client-command-simple-with-server-id"]], "mongoc_client_command_with_opts()": [[162, "mongoc-client-command-with-opts"]], "mongoc_client_destroy()": [[163, "mongoc-client-destroy"]], "mongoc_client_enable_auto_encryption()": [[164, "mongoc-client-enable-auto-encryption"]], "mongoc_client_encryption_add_key_alt_name()": [[165, "mongoc-client-encryption-add-key-alt-name"]], "mongoc_client_encryption_create_datakey()": [[166, "mongoc-client-encryption-create-datakey"]], "mongoc_client_encryption_datakey_opts_destroy()": [[167, "mongoc-client-encryption-datakey-opts-destroy"]], "mongoc_client_encryption_datakey_opts_new()": [[168, "mongoc-client-encryption-datakey-opts-new"]], "mongoc_client_encryption_datakey_opts_set_keyaltnames()": [[169, "mongoc-client-encryption-datakey-opts-set-keyaltnames"]], "mongoc_client_encryption_datakey_opts_set_keymaterial()": [[170, "mongoc-client-encryption-datakey-opts-set-keymaterial"]], "mongoc_client_encryption_datakey_opts_set_masterkey()": [[171, "mongoc-client-encryption-datakey-opts-set-masterkey"]], "mongoc_client_encryption_datakey_opts_t": [[172, "mongoc-client-encryption-datakey-opts-t"]], "mongoc_client_decryption_decrypt()": [[173, "mongoc-client-decryption-decrypt"]], "mongoc_client_encryption_delete_key()": [[174, "mongoc-client-encryption-delete-key"]], "mongoc_client_encryption_destroy()": [[175, "mongoc-client-encryption-destroy"]], "mongoc_client_encryption_encrypt()": [[176, "mongoc-client-encryption-encrypt"]], "mongoc_client_encryption_encrypt_opts_destroy()": [[177, "mongoc-client-encryption-encrypt-opts-destroy"]], "mongoc_client_encryption_encrypt_opts_new()": [[178, "mongoc-client-encryption-encrypt-opts-new"]], "mongoc_client_encryption_encrypt_opts_set_algorithm()": [[179, "mongoc-client-encryption-encrypt-opts-set-algorithm"]], "mongoc_client_encryption_encrypt_opts_set_contention_factor()": [[180, "mongoc-client-encryption-encrypt-opts-set-contention-factor"]], "mongoc_client_encryption_encrypt_opts_set_keyaltname()": [[181, "mongoc-client-encryption-encrypt-opts-set-keyaltname"]], "mongoc_client_encryption_encrypt_opts_set_keyid()": [[182, "mongoc-client-encryption-encrypt-opts-set-keyid"]], "mongoc_client_encryption_encrypt_opts_set_query_type()": [[183, "mongoc-client-encryption-encrypt-opts-set-query-type"]], "mongoc_client_encryption_encrypt_opts_t": [[184, "mongoc-client-encryption-encrypt-opts-t"]], "mongoc_client_encryption_get_crypt_shared_version()": [[185, "mongoc-client-encryption-get-crypt-shared-version"]], "mongoc_client_encryption_get_key()": [[186, "mongoc-client-encryption-get-key"]], "mongoc_client_encryption_get_key_by_alt_name()": [[187, "mongoc-client-encryption-get-key-by-alt-name"]], "mongoc_client_encryption_get_keys()": [[188, "mongoc-client-encryption-get-keys"]], "mongoc_client_encryption_new()": [[189, "mongoc-client-encryption-new"]], "mongoc_client_encryption_opts_destroy()": [[190, "mongoc-client-encryption-opts-destroy"]], "mongoc_client_encryption_opts_new()": [[191, "mongoc-client-encryption-opts-new"]], "mongoc_client_encryption_opts_set_keyvault_client()": [[192, "mongoc-client-encryption-opts-set-keyvault-client"]], "mongoc_client_encryption_opts_set_keyvault_namespace()": [[193, "mongoc-client-encryption-opts-set-keyvault-namespace"]], "mongoc_client_encryption_opts_set_kms_credential_provider_callback ()": [[194, "mongoc-client-encryption-opts-set-kms-credential-provider-callback"]], "mongoc_client_encryption_opts_set_kms_providers()": [[195, "mongoc-client-encryption-opts-set-kms-providers"]], "mongoc_client_encryption_opts_set_tls_opts()": [[196, "mongoc-client-encryption-opts-set-tls-opts"]], "mongoc_client_encryption_opts_t": [[197, "mongoc-client-encryption-opts-t"]], "mongoc_client_encryption_remove_key_alt_name()": [[198, "mongoc-client-encryption-remove-key-alt-name"]], "mongoc_client_encryption_rewrap_many_datakey()": [[199, "mongoc-client-encryption-rewrap-many-datakey"]], "mongoc_client_encryption_rewrap_many_datakey_result_destroy()": [[200, "mongoc-client-encryption-rewrap-many-datakey-result-destroy"]], "mongoc_client_encryption_rewrap_many_datakey_result_get_bulk_write_result()": [[201, "mongoc-client-encryption-rewrap-many-datakey-result-get-bulk-write-result"]], "mongoc_client_encryption_rewrap_many_datakey_result_new()": [[202, "mongoc-client-encryption-rewrap-many-datakey-result-new"]], "mongoc_client_encryption_rewrap_many_datakey_result_t": [[203, "mongoc-client-encryption-rewrap-many-datakey-result-t"]], "mongoc_client_encryption_t": [[204, "mongoc-client-encryption-t"]], "Thread Safety": [[204, "thread-safety"], [228, "thread-safety"], [229, "thread-safety"], [232, "thread-safety"], [233, "thread-safety"], [234, "thread-safety"], [235, "thread-safety"], [236, "thread-safety"], [238, "thread-safety"], [240, "thread-safety"], [274, "thread-safety"], [353, "thread-safety"], [416, "thread-safety"], [449, "thread-safety"], [460, "thread-safety"]], "mongoc_client_find_databases_with_opts()": [[205, "mongoc-client-find-databases-with-opts"]], "mongoc_client_get_collection()": [[206, "mongoc-client-get-collection"]], "mongoc_client_get_crypt_shared_version()": [[207, "mongoc-client-get-crypt-shared-version"]], "mongoc_client_get_database()": [[208, "mongoc-client-get-database"]], "mongoc_client_get_database_names()": [[209, "mongoc-client-get-database-names"]], "mongoc_client_get_database_names_with_opts()": [[210, "mongoc-client-get-database-names-with-opts"]], "Examples": [[210, "examples"], [284, "examples"], [304, "examples"], [365, "examples"], [368, "examples"], [381, "examples"], [511, "examples"], [641, "examples"]], "mongoc_client_get_default_database()": [[211, "mongoc-client-get-default-database"]], "mongoc_client_get_gridfs()": [[212, "mongoc-client-get-gridfs"]], "mongoc_client_get_handshake_description()": [[213, "mongoc-client-get-handshake-description"]], "Single-threaded client behavior": [[213, "single-threaded-client-behavior"]], "See Also": [[213, "see-also"]], "mongoc_client_get_max_bson_size()": [[214, "mongoc-client-get-max-bson-size"]], "mongoc_client_get_max_message_size()": [[215, "mongoc-client-get-max-message-size"]], "mongoc_client_get_read_concern()": [[216, "mongoc-client-get-read-concern"]], "mongoc_client_get_read_prefs()": [[217, "mongoc-client-get-read-prefs"]], "mongoc_client_get_server_description()": [[218, "mongoc-client-get-server-description"]], "mongoc_client_get_server_descriptions()": [[219, "mongoc-client-get-server-descriptions"]], "mongoc_client_get_server_status()": [[220, "mongoc-client-get-server-status"]], "mongoc_client_get_uri()": [[221, "mongoc-client-get-uri"]], "mongoc_client_get_write_concern()": [[222, "mongoc-client-get-write-concern"]], "mongoc_client_new()": [[223, "mongoc-client-new"]], "mongoc_client_new_from_uri()": [[224, "mongoc-client-new-from-uri"]], "mongoc_client_new_from_uri_with_error()": [[225, "mongoc-client-new-from-uri-with-error"]], "mongoc_client_pool_destroy()": [[226, "mongoc-client-pool-destroy"]], "mongoc_client_pool_enable_auto_encryption()": [[227, "mongoc-client-pool-enable-auto-encryption"]], "mongoc_client_pool_max_size()": [[228, "mongoc-client-pool-max-size"]], "mongoc_client_pool_min_size()": [[229, "mongoc-client-pool-min-size"]], "mongoc_client_pool_new()": [[230, "mongoc-client-pool-new"]], "mongoc_client_pool_new_with_error()": [[231, "mongoc-client-pool-new-with-error"]], "mongoc_client_pool_pop()": [[232, "mongoc-client-pool-pop"]], "mongoc_client_pool_push()": [[233, "mongoc-client-pool-push"]], "mongoc_client_pool_set_apm_callbacks()": [[234, "mongoc-client-pool-set-apm-callbacks"]], "mongoc_client_pool_set_appname()": [[235, "mongoc-client-pool-set-appname"]], "mongoc_client_pool_set_error_api()": [[236, "mongoc-client-pool-set-error-api"]], "mongoc_client_pool_set_server_api()": [[237, "mongoc-client-pool-set-server-api"]], "mongoc_client_pool_set_ssl_opts()": [[238, "mongoc-client-pool-set-ssl-opts"]], "Availability": [[238, "availability"], [270, "availability"]], "mongoc_client_pool_t": [[239, "mongoc-client-pool-t"]], "mongoc_client_pool_try_pop()": [[240, "mongoc-client-pool-try-pop"]], "mongoc_client_read_command_with_opts()": [[241, "mongoc-client-read-command-with-opts"]], "mongoc_client_read_write_command_with_opts()": [[242, "mongoc-client-read-write-command-with-opts"]], "mongoc_client_reset()": [[243, "mongoc-client-reset"]], "mongoc_client_select_server()": [[244, "mongoc-client-select-server"]], "mongoc_client_session_abort_transaction()": [[245, "mongoc-client-session-abort-transaction"]], "Return": [[245, "return"], [249, "return"], [258, "return"], [259, "return"], [260, "return"], [262, "return"], [263, "return"]], "mongoc_client_session_advance_cluster_time()": [[246, "mongoc-client-session-advance-cluster-time"]], "mongoc_client_session_advance_operation_time()": [[247, "mongoc-client-session-advance-operation-time"]], "mongoc_client_session_append()": [[248, "mongoc-client-session-append"]], "mongoc_client_session_commit_transaction()": [[249, "mongoc-client-session-commit-transaction"]], "mongoc_client_session_destroy()": [[250, "mongoc-client-session-destroy"]], "mongoc_client_session_get_client()": [[251, "mongoc-client-session-get-client"]], "mongoc_client_session_get_cluster_time()": [[252, "mongoc-client-session-get-cluster-time"]], "mongoc_client_session_get_dirty()": [[253, "mongoc-client-session-get-dirty"]], "mongoc_client_session_get_lsid()": [[254, "mongoc-client-session-get-lsid"]], "mongoc_client_session_get_operation_time()": [[255, "mongoc-client-session-get-operation-time"]], "mongoc_client_session_get_opts()": [[256, "mongoc-client-session-get-opts"]], "mongoc_client_session_get_server_id()": [[257, "mongoc-client-session-get-server-id"]], "mongoc_client_session_get_transaction_state()": [[258, "mongoc-client-session-get-transaction-state"]], "mongoc_client_session_in_transaction()": [[259, "mongoc-client-session-in-transaction"]], "mongoc_client_session_start_transaction()": [[260, "mongoc-client-session-start-transaction"]], "mongoc_client_session_t": [[261, "mongoc-client-session-t"]], "mongoc_client_session_with_transaction()": [[262, "mongoc-client-session-with-transaction"]], "mongoc_client_session_with_transaction_cb_t": [[263, "mongoc-client-session-with-transaction-cb-t"]], "mongoc_client_set_apm_callbacks()": [[264, "mongoc-client-set-apm-callbacks"]], "mongoc_client_set_appname()": [[265, "mongoc-client-set-appname"]], "mongoc_client_set_error_api()": [[266, "mongoc-client-set-error-api"]], "mongoc_client_set_read_concern()": [[267, "mongoc-client-set-read-concern"]], "mongoc_client_set_read_prefs()": [[268, "mongoc-client-set-read-prefs"]], "mongoc_client_set_server_api()": [[269, "mongoc-client-set-server-api"]], "mongoc_client_set_ssl_opts()": [[270, "mongoc-client-set-ssl-opts"]], "mongoc_client_set_stream_initiator()": [[271, "mongoc-client-set-stream-initiator"]], "mongoc_client_set_write_concern()": [[272, "mongoc-client-set-write-concern"]], "mongoc_client_start_session()": [[273, "mongoc-client-start-session"]], "mongoc_client_t": [[274, "mongoc-client-t"]], "Streams": [[274, "streams"]], "mongoc_client_watch()": [[275, "mongoc-client-watch"]], "mongoc_client_write_command_with_opts()": [[276, "mongoc-client-write-command-with-opts"]], "Basic Write Operations": [[276, "basic-write-operations"], [332, "basic-write-operations"], [383, "basic-write-operations"]], "mongoc_collection_aggregate()": [[277, "mongoc-collection-aggregate"]], "Other Parameters": [[277, "other-parameters"]], "mongoc_collection_command()": [[278, "mongoc-collection-command"]], "mongoc_collection_command_simple()": [[279, "mongoc-collection-command-simple"]], "mongoc_collection_command_with_opts()": [[280, "mongoc-collection-command-with-opts"]], "mongoc_collection_copy()": [[281, "mongoc-collection-copy"]], "mongoc_collection_count()": [[282, "mongoc-collection-count"]], "mongoc_collection_count_documents()": [[283, "mongoc-collection-count-documents"]], "Migrating from deprecated count functions": [[283, "migrating-from-deprecated-count-functions"]], "mongoc_collection_count_with_opts()": [[284, "mongoc-collection-count-with-opts"]], "mongoc_collection_create_bulk_operation()": [[285, "mongoc-collection-create-bulk-operation"]], "mongoc_collection_create_bulk_operation_with_opts()": [[286, "mongoc-collection-create-bulk-operation-with-opts"]], "mongoc_collection_create_index()": [[287, "mongoc-collection-create-index"]], "mongoc_collection_create_index_with_opts()": [[288, "mongoc-collection-create-index-with-opts"]], "mongoc_collection_delete()": [[289, "mongoc-collection-delete"]], "mongoc_collection_delete_many()": [[290, "mongoc-collection-delete-many"]], "mongoc_collection_delete_one()": [[291, "mongoc-collection-delete-one"]], "mongoc_collection_destroy()": [[292, "mongoc-collection-destroy"]], "mongoc_collection_drop()": [[293, "mongoc-collection-drop"]], "mongoc_collection_drop_index()": [[294, "mongoc-collection-drop-index"]], "mongoc_collection_drop_index_with_opts()": [[295, "mongoc-collection-drop-index-with-opts"]], "mongoc_collection_drop_with_opts()": [[296, "mongoc-collection-drop-with-opts"]], "mongoc_collection_ensure_index()": [[297, "mongoc-collection-ensure-index"]], "mongoc_collection_estimated_document_count()": [[298, "mongoc-collection-estimated-document-count"]], "Behavior": [[298, "behavior"]], "mongoc_collection_find()": [[299, "mongoc-collection-find"]], "The \u201cfind\u201d command": [[299, "the-find-command"]], "The \u201cexplain\u201d command": [[299, "the-explain-command"], [304, "the-explain-command"]], "mongoc_collection_find_and_modify()": [[300, "mongoc-collection-find-and-modify"]], "mongoc_collection_find_and_modify_with_opts()": [[301, "mongoc-collection-find-and-modify-with-opts"]], "mongoc_collection_find_indexes()": [[302, "mongoc-collection-find-indexes"]], "mongoc_collection_find_indexes_with_opts()": [[303, "mongoc-collection-find-indexes-with-opts"]], "mongoc_collection_find_with_opts()": [[304, "mongoc-collection-find-with-opts"]], "Deprecated Options": [[304, "deprecated-options"]], "mongoc_collection_get_last_error()": [[305, "mongoc-collection-get-last-error"]], "mongoc_collection_get_name()": [[306, "mongoc-collection-get-name"]], "mongoc_collection_get_read_concern()": [[307, "mongoc-collection-get-read-concern"]], "mongoc_collection_get_read_prefs()": [[308, "mongoc-collection-get-read-prefs"]], "mongoc_collection_get_write_concern()": [[309, "mongoc-collection-get-write-concern"]], "mongoc_collection_insert()": [[310, "mongoc-collection-insert"]], "mongoc_collection_insert_bulk()": [[311, "mongoc-collection-insert-bulk"]], "mongoc_collection_insert_many()": [[312, "mongoc-collection-insert-many"]], "mongoc_collection_insert_one()": [[313, "mongoc-collection-insert-one"]], "mongoc_collection_keys_to_index_string()": [[314, "mongoc-collection-keys-to-index-string"]], "mongoc_collection_read_command_with_opts()": [[315, "mongoc-collection-read-command-with-opts"]], "mongoc_collection_read_write_command_with_opts()": [[316, "mongoc-collection-read-write-command-with-opts"]], "mongoc_collection_remove()": [[317, "mongoc-collection-remove"]], "mongoc_collection_rename()": [[318, "mongoc-collection-rename"]], "mongoc_collection_rename_with_opts()": [[319, "mongoc-collection-rename-with-opts"]], "mongoc_collection_replace_one()": [[320, "mongoc-collection-replace-one"]], "mongoc_collection_save()": [[321, "mongoc-collection-save"]], "mongoc_collection_set_read_concern()": [[322, "mongoc-collection-set-read-concern"]], "mongoc_collection_set_read_prefs()": [[323, "mongoc-collection-set-read-prefs"]], "mongoc_collection_set_write_concern()": [[324, "mongoc-collection-set-write-concern"]], "mongoc_collection_stats()": [[325, "mongoc-collection-stats"]], "mongoc_collection_t": [[326, "mongoc-collection-t"]], "Read Preferences and Write Concerns": [[326, "read-preferences-and-write-concerns"]], "mongoc_collection_update()": [[327, "mongoc-collection-update"]], "mongoc_collection_update_many()": [[328, "mongoc-collection-update-many"]], "mongoc_collection_update_one()": [[329, "mongoc-collection-update-one"]], "mongoc_collection_validate()": [[330, "mongoc-collection-validate"]], "mongoc_collection_watch()": [[331, "mongoc-collection-watch"]], "mongoc_collection_write_command_with_opts()": [[332, "mongoc-collection-write-command-with-opts"]], "mongoc_cursor_clone()": [[333, "mongoc-cursor-clone"]], "mongoc_cursor_current()": [[334, "mongoc-cursor-current"]], "mongoc_cursor_destroy()": [[335, "mongoc-cursor-destroy"]], "mongoc_cursor_error()": [[336, "mongoc-cursor-error"]], "mongoc_cursor_error_document()": [[337, "mongoc-cursor-error-document"]], "mongoc_cursor_get_batch_size()": [[338, "mongoc-cursor-get-batch-size"]], "mongoc_cursor_get_hint()": [[339, "mongoc-cursor-get-hint"]], "mongoc_cursor_get_host()": [[340, "mongoc-cursor-get-host"]], "mongoc_cursor_get_id()": [[341, "mongoc-cursor-get-id"]], "mongoc_cursor_get_limit()": [[342, "mongoc-cursor-get-limit"]], "mongoc_cursor_get_max_await_time_ms()": [[343, "mongoc-cursor-get-max-await-time-ms"]], "mongoc_cursor_is_alive()": [[344, "mongoc-cursor-is-alive"]], "mongoc_cursor_more()": [[345, "mongoc-cursor-more"]], "mongoc_cursor_new_from_command_reply()": [[346, "mongoc-cursor-new-from-command-reply"]], "mongoc_cursor_new_from_command_reply_with_opts()": [[347, "mongoc-cursor-new-from-command-reply-with-opts"]], "mongoc_cursor_next()": [[348, "mongoc-cursor-next"]], "mongoc_cursor_set_batch_size()": [[349, "mongoc-cursor-set-batch-size"]], "mongoc_cursor_set_hint()": [[350, "mongoc-cursor-set-hint"]], "mongoc_cursor_set_limit()": [[351, "mongoc-cursor-set-limit"]], "mongoc_cursor_set_max_await_time_ms()": [[352, "mongoc-cursor-set-max-await-time-ms"]], "mongoc_cursor_t": [[353, "mongoc-cursor-t"]], "mongoc_database_add_user()": [[354, "mongoc-database-add-user"]], "mongoc_database_aggregate()": [[355, "mongoc-database-aggregate"]], "mongoc_database_command()": [[356, "mongoc-database-command"]], "mongoc_database_command_simple()": [[357, "mongoc-database-command-simple"]], "mongoc_database_command_with_opts()": [[358, "mongoc-database-command-with-opts"]], "mongoc_database_copy()": [[359, "mongoc-database-copy"]], "mongoc_database_create_collection()": [[360, "mongoc-database-create-collection"]], "mongoc_database_destroy()": [[361, "mongoc-database-destroy"]], "mongoc_database_drop()": [[362, "mongoc-database-drop"]], "mongoc_database_drop_with_opts()": [[363, "mongoc-database-drop-with-opts"]], "mongoc_database_find_collections()": [[364, "mongoc-database-find-collections"]], "mongoc_database_find_collections_with_opts()": [[365, "mongoc-database-find-collections-with-opts"]], "mongoc_database_get_collection()": [[366, "mongoc-database-get-collection"]], "mongoc_database_get_collection_names()": [[367, "mongoc-database-get-collection-names"]], "mongoc_database_get_collection_names_with_opts()": [[368, "mongoc-database-get-collection-names-with-opts"]], "mongoc_database_get_name()": [[369, "mongoc-database-get-name"]], "mongoc_database_get_read_concern()": [[370, "mongoc-database-get-read-concern"]], "mongoc_database_get_read_prefs()": [[371, "mongoc-database-get-read-prefs"]], "mongoc_database_get_write_concern()": [[372, "mongoc-database-get-write-concern"]], "mongoc_database_has_collection()": [[373, "mongoc-database-has-collection"]], "mongoc_database_read_command_with_opts()": [[374, "mongoc-database-read-command-with-opts"]], "mongoc_database_read_write_command_with_opts()": [[375, "mongoc-database-read-write-command-with-opts"]], "mongoc_database_remove_all_users()": [[376, "mongoc-database-remove-all-users"]], "mongoc_database_remove_user()": [[377, "mongoc-database-remove-user"]], "mongoc_database_set_read_concern()": [[378, "mongoc-database-set-read-concern"]], "mongoc_database_set_read_prefs()": [[379, "mongoc-database-set-read-prefs"]], "mongoc_database_set_write_concern()": [[380, "mongoc-database-set-write-concern"]], "mongoc_database_t": [[381, "mongoc-database-t"]], "mongoc_database_watch()": [[382, "mongoc-database-watch"]], "mongoc_database_write_command_with_opts()": [[383, "mongoc-database-write-command-with-opts"]], "mongoc_delete_flags_t": [[384, "mongoc-delete-flags-t"]], "mongoc_error_has_label()": [[385, "mongoc-error-has-label"]], "mongoc_find_and_modify_opts_append()": [[386, "mongoc-find-and-modify-opts-append"]], "Appending options to findAndModify": [[386, "appending-options-to-findandmodify"]], "mongoc_find_and_modify_opts_destroy()": [[387, "mongoc-find-and-modify-opts-destroy"]], "mongoc_find_and_modify_opts_get_bypass_document_validation()": [[388, "mongoc-find-and-modify-opts-get-bypass-document-validation"]], "mongoc_find_and_modify_opts_get_fields()": [[389, "mongoc-find-and-modify-opts-get-fields"]], "mongoc_find_and_modify_opts_get_flags()": [[390, "mongoc-find-and-modify-opts-get-flags"]], "mongoc_find_and_modify_opts_get_max_time_ms()": [[391, "mongoc-find-and-modify-opts-get-max-time-ms"]], "mongoc_find_and_modify_opts_get_sort()": [[392, "mongoc-find-and-modify-opts-get-sort"]], "mongoc_find_and_modify_opts_get_update()": [[393, "mongoc-find-and-modify-opts-get-update"]], "mongoc_find_and_modify_opts_new()": [[394, "mongoc-find-and-modify-opts-new"]], "mongoc_find_and_modify_opts_set_bypass_document_validation()": [[395, "mongoc-find-and-modify-opts-set-bypass-document-validation"]], "Setting bypassDocumentValidation": [[395, "setting-bypassdocumentvalidation"]], "mongoc_find_and_modify_opts_set_fields()": [[396, "mongoc-find-and-modify-opts-set-fields"]], "Setting fields": [[396, "setting-fields"]], "mongoc_find_and_modify_opts_set_flags()": [[397, "mongoc-find-and-modify-opts-set-flags"]], "Setting flags": [[397, "setting-flags"]], "mongoc_find_and_modify_opts_set_max_time_ms()": [[398, "mongoc-find-and-modify-opts-set-max-time-ms"]], "Setting maxTimeMS": [[398, "setting-maxtimems"]], "mongoc_find_and_modify_opts_set_sort()": [[399, "mongoc-find-and-modify-opts-set-sort"]], "Setting sort": [[399, "setting-sort"]], "mongoc_find_and_modify_opts_set_update()": [[400, "mongoc-find-and-modify-opts-set-update"]], "Setting update": [[400, "setting-update"]], "mongoc_find_and_modify_opts_t": [[401, "mongoc-find-and-modify-opts-t"]], "mongoc_get_major_version()": [[402, "mongoc-get-major-version"]], "mongoc_get_micro_version()": [[403, "mongoc-get-micro-version"]], "mongoc_get_minor_version()": [[404, "mongoc-get-minor-version"]], "mongoc_get_version()": [[405, "mongoc-get-version"]], "mongoc_gridfs_bucket_abort_upload()": [[406, "mongoc-gridfs-bucket-abort-upload"]], "mongoc_gridfs_bucket_delete_by_id()": [[407, "mongoc-gridfs-bucket-delete-by-id"]], "mongoc_gridfs_bucket_destroy()": [[408, "mongoc-gridfs-bucket-destroy"]], "mongoc_gridfs_bucket_download_to_stream()": [[409, "mongoc-gridfs-bucket-download-to-stream"]], "mongoc_gridfs_bucket_find()": [[410, "mongoc-gridfs-bucket-find"]], "mongoc_gridfs_bucket_new()": [[411, "mongoc-gridfs-bucket-new"]], "mongoc_gridfs_bucket_open_download_stream()": [[412, "mongoc-gridfs-bucket-open-download-stream"]], "mongoc_gridfs_bucket_open_upload_stream()": [[413, "mongoc-gridfs-bucket-open-upload-stream"]], "mongoc_gridfs_bucket_open_upload_stream_with_id()": [[414, "mongoc-gridfs-bucket-open-upload-stream-with-id"]], "mongoc_gridfs_bucket_stream_error()": [[415, "mongoc-gridfs-bucket-stream-error"]], "mongoc_gridfs_bucket_t": [[416, "mongoc-gridfs-bucket-t"]], "mongoc_gridfs_bucket_upload_from_stream()": [[417, "mongoc-gridfs-bucket-upload-from-stream"]], "mongoc_gridfs_bucket_upload_from_stream_with_id()": [[418, "mongoc-gridfs-bucket-upload-from-stream-with-id"]], "mongoc_gridfs_create_file()": [[419, "mongoc-gridfs-create-file"]], "mongoc_gridfs_create_file_from_stream()": [[420, "mongoc-gridfs-create-file-from-stream"]], "mongoc_gridfs_destroy()": [[421, "mongoc-gridfs-destroy"]], "mongoc_gridfs_drop()": [[422, "mongoc-gridfs-drop"]], "mongoc_gridfs_file_destroy()": [[423, "mongoc-gridfs-file-destroy"]], "mongoc_gridfs_file_error()": [[424, "mongoc-gridfs-file-error"]], "mongoc_gridfs_file_get_aliases()": [[425, "mongoc-gridfs-file-get-aliases"]], "mongoc_gridfs_file_get_chunk_size()": [[426, "mongoc-gridfs-file-get-chunk-size"]], "mongoc_gridfs_file_get_content_type()": [[427, "mongoc-gridfs-file-get-content-type"]], "mongoc_gridfs_file_get_filename()": [[428, "mongoc-gridfs-file-get-filename"]], "mongoc_gridfs_file_get_id()": [[429, "mongoc-gridfs-file-get-id"]], "mongoc_gridfs_file_get_length()": [[430, "mongoc-gridfs-file-get-length"]], "mongoc_gridfs_file_get_md5()": [[431, "mongoc-gridfs-file-get-md5"]], "mongoc_gridfs_file_get_metadata()": [[432, "mongoc-gridfs-file-get-metadata"]], "mongoc_gridfs_file_get_upload_date()": [[433, "mongoc-gridfs-file-get-upload-date"]], "mongoc_gridfs_file_list_destroy()": [[434, "mongoc-gridfs-file-list-destroy"]], "mongoc_gridfs_file_list_error()": [[435, "mongoc-gridfs-file-list-error"]], "mongoc_gridfs_file_list_next()": [[436, "mongoc-gridfs-file-list-next"]], "mongoc_gridfs_file_list_t": [[437, "mongoc-gridfs-file-list-t"]], "mongoc_gridfs_file_opt_t": [[438, "mongoc-gridfs-file-opt-t"]], "mongoc_gridfs_file_readv()": [[439, "mongoc-gridfs-file-readv"]], "mongoc_gridfs_file_remove()": [[440, "mongoc-gridfs-file-remove"]], "mongoc_gridfs_file_save()": [[441, "mongoc-gridfs-file-save"]], "mongoc_gridfs_file_seek()": [[442, "mongoc-gridfs-file-seek"]], "mongoc_gridfs_file_set_aliases()": [[443, "mongoc-gridfs-file-set-aliases"]], "mongoc_gridfs_file_set_content_type()": [[444, "mongoc-gridfs-file-set-content-type"]], "mongoc_gridfs_file_set_filename()": [[445, "mongoc-gridfs-file-set-filename"]], "mongoc_gridfs_file_set_id()": [[446, "mongoc-gridfs-file-set-id"]], "mongoc_gridfs_file_set_md5()": [[447, "mongoc-gridfs-file-set-md5"]], "mongoc_gridfs_file_set_metadata()": [[448, "mongoc-gridfs-file-set-metadata"]], "mongoc_gridfs_file_t": [[449, "mongoc-gridfs-file-t"]], "Related": [[449, "related"]], "mongoc_gridfs_file_tell()": [[450, "mongoc-gridfs-file-tell"]], "mongoc_gridfs_file_writev()": [[451, "mongoc-gridfs-file-writev"]], "mongoc_gridfs_find()": [[452, "mongoc-gridfs-find"]], "mongoc_gridfs_find_one()": [[453, "mongoc-gridfs-find-one"]], "mongoc_gridfs_find_one_by_filename()": [[454, "mongoc-gridfs-find-one-by-filename"]], "mongoc_gridfs_find_one_with_opts()": [[455, "mongoc-gridfs-find-one-with-opts"]], "mongoc_gridfs_find_with_opts()": [[456, "mongoc-gridfs-find-with-opts"]], "mongoc_gridfs_get_chunks()": [[457, "mongoc-gridfs-get-chunks"]], "mongoc_gridfs_get_files()": [[458, "mongoc-gridfs-get-files"]], "mongoc_gridfs_remove_by_filename()": [[459, "mongoc-gridfs-remove-by-filename"]], "mongoc_gridfs_t": [[460, "mongoc-gridfs-t"]], "mongoc_handshake_data_append()": [[461, "mongoc-handshake-data-append"]], "mongoc_host_list_t": [[462, "mongoc-host-list-t"]], "mongoc_index_opt_geo_get_default()": [[463, "mongoc-index-opt-geo-get-default"]], "mongoc_index_opt_geo_init()": [[464, "mongoc-index-opt-geo-init"]], "mongoc_index_opt_geo_t": [[465, "mongoc-index-opt-geo-t"]], "mongoc_index_opt_get_default()": [[466, "mongoc-index-opt-get-default"]], "mongoc_index_opt_init()": [[467, "mongoc-index-opt-init"]], "mongoc_index_opt_t": [[468, "mongoc-index-opt-t"]], "mongoc_index_opt_wt_get_default()": [[469, "mongoc-index-opt-wt-get-default"]], "mongoc_index_opt_wt_init()": [[470, "mongoc-index-opt-wt-init"]], "mongoc_index_opt_wt_t": [[471, "mongoc-index-opt-wt-t"]], "mongoc_init()": [[472, "mongoc-init"]], "mongoc_insert_flags_t": [[473, "mongoc-insert-flags-t"]], "Flag Values": [[473, "flag-values"], [485, "flag-values"], [513, "flag-values"], [514, "flag-values"], [610, "flag-values"], [611, "flag-values"]], "mongoc_iovec_t": [[474, "mongoc-iovec-t"]], "mongoc_matcher_destroy()": [[475, "mongoc-matcher-destroy"]], "mongoc_matcher_match()": [[476, "mongoc-matcher-match"]], "mongoc_matcher_new()": [[477, "mongoc-matcher-new"]], "mongoc_matcher_t": [[478, "mongoc-matcher-t"]], "mongoc_optional_copy()": [[479, "mongoc-optional-copy"]], "mongoc_optional_init()": [[480, "mongoc-optional-init"]], "mongoc_optional_is_set()": [[481, "mongoc-optional-is-set"]], "mongoc_optional_set_value()": [[482, "mongoc-optional-set-value"]], "mongoc_optional_t": [[483, "mongoc-optional-t"]], "mongoc_optional_value()": [[484, "mongoc-optional-value"]], "mongoc_query_flags_t": [[485, "mongoc-query-flags-t"]], "mongoc_rand": [[486, "mongoc-rand"]], "Entropy": [[486, "entropy"]], "Status": [[486, "status"]], "mongoc_rand_add()": [[487, "mongoc-rand-add"]], "mongoc_rand_seed()": [[488, "mongoc-rand-seed"]], "mongoc_rand_status()": [[489, "mongoc-rand-status"]], "mongoc_read_concern_append()": [[490, "mongoc-read-concern-append"]], "mongoc_read_concern_copy()": [[491, "mongoc-read-concern-copy"]], "mongoc_read_concern_destroy()": [[492, "mongoc-read-concern-destroy"]], "mongoc_read_concern_get_level()": [[493, "mongoc-read-concern-get-level"]], "mongoc_read_concern_is_default()": [[494, "mongoc-read-concern-is-default"]], "mongoc_read_concern_new()": [[495, "mongoc-read-concern-new"]], "mongoc_read_concern_set_level()": [[496, "mongoc-read-concern-set-level"]], "mongoc_read_concern_t": [[497, "mongoc-read-concern-t"]], "Read Concern Levels": [[497, "read-concern-levels"]], "mongoc_read_mode_t": [[498, "mongoc-read-mode-t"]], "mongoc_read_prefs_add_tag()": [[499, "mongoc-read-prefs-add-tag"]], "mongoc_read_prefs_copy()": [[500, "mongoc-read-prefs-copy"]], "mongoc_read_prefs_destroy()": [[501, "mongoc-read-prefs-destroy"]], "mongoc_read_prefs_get_hedge()": [[502, "mongoc-read-prefs-get-hedge"]], "mongoc_read_prefs_get_max_staleness_seconds()": [[503, "mongoc-read-prefs-get-max-staleness-seconds"]], "mongoc_read_prefs_get_mode()": [[504, "mongoc-read-prefs-get-mode"]], "mongoc_read_prefs_get_tags()": [[505, "mongoc-read-prefs-get-tags"]], "mongoc_read_prefs_is_valid()": [[506, "mongoc-read-prefs-is-valid"]], "mongoc_read_prefs_new()": [[507, "mongoc-read-prefs-new"]], "mongoc_read_prefs_set_hedge()": [[508, "mongoc-read-prefs-set-hedge"]], "mongoc_read_prefs_set_max_staleness_seconds()": [[509, "mongoc-read-prefs-set-max-staleness-seconds"]], "mongoc_read_prefs_set_mode()": [[510, "mongoc-read-prefs-set-mode"]], "mongoc_read_prefs_set_tags()": [[511, "mongoc-read-prefs-set-tags"]], "mongoc_read_prefs_t": [[512, "mongoc-read-prefs-t"]], "Read Modes": [[512, "read-modes"]], "Tag Sets": [[512, "tag-sets"]], "Max Staleness": [[512, "max-staleness"]], "Hedged Reads": [[512, "hedged-reads"]], "mongoc_remove_flags_t": [[513, "mongoc-remove-flags-t"]], "mongoc_reply_flags_t": [[514, "mongoc-reply-flags-t"]], "mongoc_server_api_copy()": [[515, "mongoc-server-api-copy"]], "mongoc_server_api_deprecation_errors()": [[516, "mongoc-server-api-deprecation-errors"]], "mongoc_server_api_destroy()": [[517, "mongoc-server-api-destroy"]], "mongoc_server_api_get_deprecation_errors()": [[518, "mongoc-server-api-get-deprecation-errors"]], "mongoc_server_api_get_strict()": [[519, "mongoc-server-api-get-strict"]], "mongoc_server_api_get_version()": [[520, "mongoc-server-api-get-version"]], "mongoc_server_api_new()": [[521, "mongoc-server-api-new"]], "mongoc_server_api_strict()": [[522, "mongoc-server-api-strict"]], "mongoc_server_api_t": [[523, "mongoc-server-api-t"]], "mongoc_server_api_version_from_string()": [[524, "mongoc-server-api-version-from-string"]], "mongoc_server_api_version_t": [[525, "mongoc-server-api-version-t"]], "Supported API Versions": [[525, "supported-api-versions"]], "mongoc_server_api_version_to_string()": [[526, "mongoc-server-api-version-to-string"]], "mongoc_server_description_destroy()": [[527, "mongoc-server-description-destroy"]], "mongoc_server_description_hello_response()": [[528, "mongoc-server-description-hello-response"]], "mongoc_server_description_host()": [[529, "mongoc-server-description-host"]], "mongoc_server_description_id()": [[530, "mongoc-server-description-id"]], "mongoc_server_description_ismaster()": [[531, "mongoc-server-description-ismaster"]], "mongoc_server_description_last_update_time()": [[532, "mongoc-server-description-last-update-time"]], "mongoc_server_description_new_copy()": [[533, "mongoc-server-description-new-copy"]], "mongoc_server_description_round_trip_time()": [[534, "mongoc-server-description-round-trip-time"]], "mongoc_server_description_t": [[535, "mongoc-server-description-t"]], "mongoc_server_description_type()": [[536, "mongoc-server-description-type"]], "mongoc_server_descriptions_destroy_all()": [[537, "mongoc-server-descriptions-destroy-all"]], "mongoc_session_opt_t": [[538, "mongoc-session-opt-t"]], "mongoc_session_opts_clone()": [[539, "mongoc-session-opts-clone"]], "mongoc_session_opts_destroy()": [[540, "mongoc-session-opts-destroy"]], "mongoc_session_opts_get_causal_consistency()": [[541, "mongoc-session-opts-get-causal-consistency"]], "mongoc_session_opts_get_default_transaction_opts()": [[542, "mongoc-session-opts-get-default-transaction-opts"]], "mongoc_session_opts_get_snapshot()": [[543, "mongoc-session-opts-get-snapshot"]], "mongoc_session_opts_get_transaction_opts()": [[544, "mongoc-session-opts-get-transaction-opts"]], "mongoc_session_opts_new()": [[545, "mongoc-session-opts-new"]], "mongoc_session_opts_set_causal_consistency()": [[546, "mongoc-session-opts-set-causal-consistency"]], "mongoc_session_opts_set_default_transaction_opts()": [[547, "mongoc-session-opts-set-default-transaction-opts"]], "mongoc_session_opts_set_snapshot()": [[548, "mongoc-session-opts-set-snapshot"]], "mongoc_socket_accept()": [[549, "mongoc-socket-accept"]], "mongoc_socket_bind()": [[550, "mongoc-socket-bind"]], "mongoc_socket_close()": [[551, "mongoc-socket-close"]], "mongoc_socket_connect()": [[552, "mongoc-socket-connect"]], "mongoc_socket_destroy()": [[553, "mongoc-socket-destroy"]], "mongoc_socket_errno()": [[554, "mongoc-socket-errno"]], "mongoc_socket_getnameinfo()": [[555, "mongoc-socket-getnameinfo"]], "mongoc_socket_getsockname()": [[556, "mongoc-socket-getsockname"]], "mongoc_socket_listen()": [[557, "mongoc-socket-listen"]], "mongoc_socket_new()": [[558, "mongoc-socket-new"]], "mongoc_socket_recv()": [[559, "mongoc-socket-recv"]], "mongoc_socket_send()": [[560, "mongoc-socket-send"]], "mongoc_socket_sendv()": [[561, "mongoc-socket-sendv"]], "mongoc_socket_setsockopt()": [[562, "mongoc-socket-setsockopt"]], "mongoc_socket_t": [[563, "mongoc-socket-t"]], "mongoc_ssl_opt_get_default()": [[564, "mongoc-ssl-opt-get-default"]], "mongoc_ssl_opt_t": [[565, "mongoc-ssl-opt-t"]], "mongoc_stream_buffered_new()": [[566, "mongoc-stream-buffered-new"]], "mongoc_stream_buffered_t": [[567, "mongoc-stream-buffered-t"]], "mongoc_stream_close()": [[568, "mongoc-stream-close"]], "mongoc_stream_cork()": [[569, "mongoc-stream-cork"]], "mongoc_stream_destroy()": [[570, "mongoc-stream-destroy"]], "mongoc_stream_file_get_fd()": [[571, "mongoc-stream-file-get-fd"]], "mongoc_stream_file_new()": [[572, "mongoc-stream-file-new"]], "mongoc_stream_file_new_for_path()": [[573, "mongoc-stream-file-new-for-path"]], "mongoc_stream_file_t": [[574, "mongoc-stream-file-t"]], "mongoc_stream_flush()": [[575, "mongoc-stream-flush"]], "mongoc_stream_get_base_stream()": [[576, "mongoc-stream-get-base-stream"]], "mongoc_stream_gridfs_new()": [[577, "mongoc-stream-gridfs-new"]], "mongoc_stream_read()": [[578, "mongoc-stream-read"]], "mongoc_stream_readv()": [[579, "mongoc-stream-readv"]], "mongoc_stream_setsockopt()": [[580, "mongoc-stream-setsockopt"]], "mongoc_stream_should_retry()": [[581, "mongoc-stream-should-retry"]], "mongoc_stream_socket_get_socket()": [[582, "mongoc-stream-socket-get-socket"]], "mongoc_stream_socket_new()": [[583, "mongoc-stream-socket-new"]], "mongoc_stream_socket_t": [[584, "mongoc-stream-socket-t"]], "mongoc_stream_t": [[585, "mongoc-stream-t"]], "Stream Types": [[585, "stream-types"]], "mongoc_stream_timed_out()": [[586, "mongoc-stream-timed-out"]], "mongoc_stream_tls_t": [[587, "mongoc-stream-tls-t"]], "mongoc_stream_uncork()": [[588, "mongoc-stream-uncork"]], "mongoc_stream_write()": [[589, "mongoc-stream-write"]], "mongoc_stream_writev()": [[590, "mongoc-stream-writev"]], "mongoc_topology_description_destroy()": [[591, "mongoc-topology-description-destroy"]], "mongoc_topology_description_get_servers()": [[592, "mongoc-topology-description-get-servers"]], "mongoc_topology_description_has_readable_server()": [[593, "mongoc-topology-description-has-readable-server"]], "mongoc_topology_description_has_writable_server()": [[594, "mongoc-topology-description-has-writable-server"]], "mongoc_topology_description_new_copy()": [[595, "mongoc-topology-description-new-copy"]], "mongoc_topology_description_t": [[596, "mongoc-topology-description-t"]], "mongoc_topology_description_type()": [[597, "mongoc-topology-description-type"]], "mongoc_transaction_opt_t": [[598, "mongoc-transaction-opt-t"]], "mongoc_transaction_opts_clone()": [[599, "mongoc-transaction-opts-clone"]], "mongoc_transaction_opts_destroy()": [[600, "mongoc-transaction-opts-destroy"]], "mongoc_transaction_opts_get_max_commit_time_ms()": [[601, "mongoc-transaction-opts-get-max-commit-time-ms"]], "mongoc_transaction_opts_get_read_concern()": [[602, "mongoc-transaction-opts-get-read-concern"]], "mongoc_transaction_opts_get_read_prefs()": [[603, "mongoc-transaction-opts-get-read-prefs"]], "mongoc_transaction_opts_get_write_concern()": [[604, "mongoc-transaction-opts-get-write-concern"]], "mongoc_transaction_opts_new()": [[605, "mongoc-transaction-opts-new"]], "mongoc_transaction_opts_set_max_commit_time_ms()": [[606, "mongoc-transaction-opts-set-max-commit-time-ms"]], "mongoc_transaction_opts_set_read_concern()": [[607, "mongoc-transaction-opts-set-read-concern"]], "mongoc_transaction_opts_set_read_prefs()": [[608, "mongoc-transaction-opts-set-read-prefs"]], "mongoc_transaction_opts_set_write_concern()": [[609, "mongoc-transaction-opts-set-write-concern"]], "mongoc_transaction_state_t": [[610, "mongoc-transaction-state-t"]], "mongoc_update_flags_t": [[611, "mongoc-update-flags-t"]], "mongoc_uri_copy()": [[612, "mongoc-uri-copy"]], "mongoc_uri_destroy()": [[613, "mongoc-uri-destroy"]], "mongoc_uri_get_auth_mechanism()": [[614, "mongoc-uri-get-auth-mechanism"]], "mongoc_uri_get_auth_source()": [[615, "mongoc-uri-get-auth-source"]], "mongoc_uri_get_compressors()": [[616, "mongoc-uri-get-compressors"]], "mongoc_uri_get_database()": [[617, "mongoc-uri-get-database"]], "mongoc_uri_get_hosts()": [[618, "mongoc-uri-get-hosts"]], "mongoc_uri_get_mechanism_properties()": [[619, "mongoc-uri-get-mechanism-properties"]], "mongoc_uri_get_option_as_bool()": [[620, "mongoc-uri-get-option-as-bool"]], "mongoc_uri_get_option_as_int32()": [[621, "mongoc-uri-get-option-as-int32"]], "mongoc_uri_get_option_as_int64()": [[622, "mongoc-uri-get-option-as-int64"]], "mongoc_uri_get_option_as_utf8()": [[623, "mongoc-uri-get-option-as-utf8"]], "mongoc_uri_get_options()": [[624, "mongoc-uri-get-options"]], "mongoc_uri_get_password()": [[625, "mongoc-uri-get-password"]], "mongoc_uri_get_read_concern()": [[626, "mongoc-uri-get-read-concern"]], "mongoc_uri_get_read_prefs()": [[627, "mongoc-uri-get-read-prefs"]], "mongoc_uri_get_read_prefs_t()": [[628, "mongoc-uri-get-read-prefs-t"]], "mongoc_uri_get_replica_set()": [[629, "mongoc-uri-get-replica-set"]], "mongoc_uri_get_service()": [[630, "mongoc-uri-get-service"]], "mongoc_uri_get_srv_hostname()": [[631, "mongoc-uri-get-srv-hostname"]], "mongoc_uri_get_srv_service_name()": [[632, "mongoc-uri-get-srv-service-name"]], "mongoc_uri_get_ssl()": [[633, "mongoc-uri-get-ssl"]], "mongoc_uri_get_string()": [[634, "mongoc-uri-get-string"]], "mongoc_uri_get_tls()": [[635, "mongoc-uri-get-tls"]], "mongoc_uri_get_username()": [[636, "mongoc-uri-get-username"]], "mongoc_uri_get_write_concern()": [[637, "mongoc-uri-get-write-concern"]], "mongoc_uri_has_option()": [[638, "mongoc-uri-has-option"]], "mongoc_uri_new()": [[639, "mongoc-uri-new"]], "mongoc_uri_new_for_host_port()": [[640, "mongoc-uri-new-for-host-port"]], "mongoc_uri_new_with_error()": [[641, "mongoc-uri-new-with-error"]], "mongoc_uri_option_is_bool()": [[642, "mongoc-uri-option-is-bool"]], "mongoc_uri_option_is_int32()": [[643, "mongoc-uri-option-is-int32"]], "mongoc_uri_option_is_int64()": [[644, "mongoc-uri-option-is-int64"]], "mongoc_uri_option_is_utf8()": [[645, "mongoc-uri-option-is-utf8"]], "mongoc_uri_set_auth_mechanism()": [[646, "mongoc-uri-set-auth-mechanism"]], "mongoc_uri_set_auth_source()": [[647, "mongoc-uri-set-auth-source"]], "mongoc_uri_set_compressors()": [[648, "mongoc-uri-set-compressors"]], "mongoc_uri_set_database()": [[649, "mongoc-uri-set-database"]], "mongoc_uri_set_mechanism_properties()": [[650, "mongoc-uri-set-mechanism-properties"]], "mongoc_uri_set_option_as_bool()": [[651, "mongoc-uri-set-option-as-bool"]], "mongoc_uri_set_option_as_int32()": [[652, "mongoc-uri-set-option-as-int32"]], "mongoc_uri_set_option_as_int64()": [[653, "mongoc-uri-set-option-as-int64"]], "mongoc_uri_set_option_as_utf8()": [[654, "mongoc-uri-set-option-as-utf8"]], "mongoc_uri_set_password()": [[655, "mongoc-uri-set-password"]], "mongoc_uri_set_read_concern()": [[656, "mongoc-uri-set-read-concern"]], "mongoc_uri_set_read_prefs_t()": [[657, "mongoc-uri-set-read-prefs-t"]], "mongoc_uri_set_username()": [[658, "mongoc-uri-set-username"]], "mongoc_uri_set_write_concern()": [[659, "mongoc-uri-set-write-concern"]], "mongoc_uri_t": [[660, "mongoc-uri-t"]], "Format": [[660, "format"]], "Replica Set Example": [[660, "replica-set-example"]], "SRV Example": [[660, "srv-example"]], "IPv4 and IPv6": [[660, "ipv4-and-ipv6"]], "Connection Options": [[660, "connection-options"]], "Authentication Options": [[660, "authentication-options"]], "Mechanism Properties": [[660, "mechanism-properties"]], "TLS Options": [[660, "tls-options"]], "Deprecated SSL Options": [[660, "deprecated-ssl-options"]], "Server Discovery, Monitoring, and Selection Options": [[660, "server-discovery-monitoring-and-selection-options"]], "Connection Pool Options": [[660, "connection-pool-options"]], "Write Concern Options": [[660, "write-concern-options"]], "Read Concern Options": [[660, "read-concern-options"]], "Read Preference Options": [[660, "read-preference-options"]], "Legacy Options": [[660, "legacy-options"]], "mongoc_uri_unescape()": [[661, "mongoc-uri-unescape"]], "Version Checks": [[662, "version-checks"]], "Run-Time Version Checks": [[662, "run-time-version-checks"]], "mongoc_write_concern_append()": [[663, "mongoc-write-concern-append"]], "mongoc_write_concern_copy()": [[664, "mongoc-write-concern-copy"]], "mongoc_write_concern_destroy()": [[665, "mongoc-write-concern-destroy"]], "mongoc_write_concern_get_fsync()": [[666, "mongoc-write-concern-get-fsync"]], "mongoc_write_concern_get_journal()": [[667, "mongoc-write-concern-get-journal"]], "mongoc_write_concern_get_w()": [[668, "mongoc-write-concern-get-w"]], "mongoc_write_concern_get_wmajority()": [[669, "mongoc-write-concern-get-wmajority"]], "mongoc_write_concern_get_wtag()": [[670, "mongoc-write-concern-get-wtag"]], "mongoc_write_concern_get_wtimeout()": [[671, "mongoc-write-concern-get-wtimeout"]], "mongoc_write_concern_get_wtimeout_int64()": [[672, "mongoc-write-concern-get-wtimeout-int64"]], "mongoc_write_concern_is_acknowledged()": [[673, "mongoc-write-concern-is-acknowledged"]], "mongoc_write_concern_is_default()": [[674, "mongoc-write-concern-is-default"]], "mongoc_write_concern_is_valid()": [[675, "mongoc-write-concern-is-valid"]], "mongoc_write_concern_journal_is_set()": [[676, "mongoc-write-concern-journal-is-set"]], "mongoc_write_concern_new()": [[677, "mongoc-write-concern-new"]], "mongoc_write_concern_set_fsync()": [[678, "mongoc-write-concern-set-fsync"]], "mongoc_write_concern_set_journal()": [[679, "mongoc-write-concern-set-journal"]], "mongoc_write_concern_set_w()": [[680, "mongoc-write-concern-set-w"]], "mongoc_write_concern_set_wmajority()": [[681, "mongoc-write-concern-set-wmajority"]], "mongoc_write_concern_set_wtag()": [[682, "mongoc-write-concern-set-wtag"]], "mongoc_write_concern_set_wtimeout()": [[683, "mongoc-write-concern-set-wtimeout"]], "mongoc_write_concern_set_wtimeout_int64()": [[684, "mongoc-write-concern-set-wtimeout-int64"]], "mongoc_write_concern_t": [[685, "mongoc-write-concern-t"]], "Write Concern Levels": [[685, "write-concern-levels"]], "Deprecations": [[685, "deprecations"]], "Experimental: Queryable Encryption": [[686, "experimental-queryable-encryption"]], "Tutorial": [[687, "tutorial"]], "Contents": [[687, "contents"]], "Installing": [[687, "installing"]], "Starting MongoDB": [[687, "starting-mongodb"]], "Include and link libmongoc in your C program": [[687, "include-and-link-libmongoc-in-your-c-program"]], "Include mongoc.h": [[687, "include-mongoc-h"]], "CMake": [[687, "cmake"]], "pkg-config": [[687, "pkg-config"]], "Specifying header and include paths manually": [[687, "specifying-header-and-include-paths-manually"]], "Use libmongoc in a Microsoft Visual Studio Project": [[687, "use-libmongoc-in-a-microsoft-visual-studio-project"]], "Making a Connection": [[687, "making-a-connection"]], "Creating BSON Documents": [[687, "creating-bson-documents"]], "Appending BSON": [[687, "appending-bson"]], "Using BCON": [[687, "using-bcon"]], "Creating BSON from JSON": [[687, "creating-bson-from-json"]], "Basic CRUD Operations": [[687, "basic-crud-operations"]], "Inserting a Document": [[687, "inserting-a-document"]], "Finding a Document": [[687, "finding-a-document"]], "Updating a Document": [[687, "updating-a-document"]], "Deleting a Document": [[687, "deleting-a-document"]], "Counting Documents": [[687, "counting-documents"]], "Executing Commands": [[687, "executing-commands"]], "Threading": [[687, "threading"]], "Next Steps": [[687, "next-steps"], [689, "next-steps"]], "Using Client-Side Field Level Encryption": [[688, "using-client-side-field-level-encryption"]], "Installation": [[688, "installation"]], "libmongocrypt": [[688, "libmongocrypt"]], "mongocryptd": [[688, "mongocryptd"]], "Automatic Client-Side Field Level Encryption": [[688, "automatic-client-side-field-level-encryption"]], "Providing Local Automatic Encryption Rules": [[688, "providing-local-automatic-encryption-rules"]], "Server-Side Field Level Encryption Enforcement": [[688, "server-side-field-level-encryption-enforcement"]], "Explicit Encryption": [[688, "explicit-encryption"]], "Explicit Encryption with Automatic Decryption": [[688, "explicit-encryption-with-automatic-decryption"]], "Using libmongoc in a Microsoft Visual Studio project": [[689, "using-libmongoc-in-a-microsoft-visual-studio-project"]], "Static linking": [[689, "static-linking"]]}, "indexentries": {"mongoc_kms_credentials_provider_callback_fn (c type)": [[194, "c.mongoc_kms_credentials_provider_callback_fn"]]}})
\ No newline at end of file
diff --git a/libmongoc/1.23.4/tutorial.html b/libmongoc/1.23.4/tutorial.html
new file mode 100644
index 0000000000000000000000000000000000000000..cae341f2c008931109692914a9d1b98e603bc6c3
--- /dev/null
+++ b/libmongoc/1.23.4/tutorial.html
@@ -0,0 +1,1113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Tutorial — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+This guide offers a brief introduction to the MongoDB C Driver.
+For more information on the C API, please refer to the API Reference .
+
+Contents
+
+
+
+
+For detailed instructions on installing the MongoDB C Driver on a particular platform, please see the installation guide .
+
+
+
+To run the examples in this tutorial, MongoDB must be installed and running on localhost on the default port, 27017. To check if it is up and running, connect to it with the MongoDB shell.
+ $ mongo --host localhost --port 27017
+MongoDB shell version: 3.0.6
+connecting to: localhost:27017/test
+>
+
+
+
+
+
+
+Include mongoc.h
+All libmongoc’s functions and types are available in one header file. Simply include mongoc/mongoc.h :
+#include <mongoc/mongoc.h>
+
+
+
+CMake
+The libmongoc installation includes a CMake config-file package , so you can use CMake’s find_package command to import libmongoc’s CMake target and link to libmongoc (as a shared library):
+
+
CMakeLists.txt
+
# Specify the minimum version you require.
+find_package ( mongoc - 1.0 1.7 REQUIRED )
+
+# The "hello_mongoc.c" sample program is shared among four tests.
+add_executable ( hello_mongoc ../../ hello_mongoc . c )
+target_link_libraries ( hello_mongoc PRIVATE mongo :: mongoc_shared )
+
+
+
+You can also use libmongoc as a static library instead: Use the mongo::mongoc_static CMake target:
+# Specify the minimum version you require.
+find_package ( mongoc - 1.0 1.7 REQUIRED )
+
+# The "hello_mongoc.c" sample program is shared among four tests.
+add_executable ( hello_mongoc ../../ hello_mongoc . c )
+target_link_libraries ( hello_mongoc PRIVATE mongo :: mongoc_static )
+
+
+
+
+pkg-config
+If you’re not using CMake, use pkg-config on the command line to set header and library paths:
+ gcc -o hello_mongoc hello_mongoc.c $(pkg-config --libs --cflags libmongoc-1.0)
+
+
+Or to statically link to libmongoc:
+ gcc -o hello_mongoc hello_mongoc.c $(pkg-config --libs --cflags libmongoc-static-1.0)
+
+
+
+
+Specifying header and include paths manually
+If you aren’t using CMake or pkg-config, paths and libraries can be managed manually.
+ $ gcc -o hello_mongoc hello_mongoc.c \
+ -I/usr/local/include/libbson-1.0 -I/usr/local/include/libmongoc-1.0 \
+ -lmongoc-1.0 -lbson-1.0
+$ ./hello_mongoc
+{ "ok" : 1.000000 }
+
+
+For Windows users, the code can be compiled and run with the following commands. (This assumes that the MongoDB C Driver has been installed to C:\mongo-c-driver ; change the include directory as needed.)
+ C:\> cl.exe /IC:\mongo-c-driver\include\libbson-1.0 /IC:\mongo-c-driver\include\libmongoc-1.0 hello_mongoc.c
+C:\> hello_mongoc
+{ "ok" : 1.000000 }
+
+
+
+
+
+
+
+
+Access MongoDB with a mongoc_client_t . It transparently connects to standalone servers, replica sets and sharded clusters on demand. To perform operations on a database or collection, create a mongoc_database_t or mongoc_collection_t struct from the mongoc_client_t .
+At the start of an application, call mongoc_init() before any other libmongoc functions. At the end, call the appropriate destroy function for each collection, database, or client handle, in reverse order from how they were constructed. Call mongoc_cleanup() before exiting.
+The example below establishes a connection to a standalone server on localhost , registers the client application as “connect-example,” and performs a simple command.
+More information about database operations can be found in the CRUD Operations and Executing Commands sections. Examples of connecting to replica sets and sharded clusters can be found on the Advanced Connections page.
+
+
hello_mongoc.c
+
#include <mongoc/mongoc.h>
+
+int
+main ( int argc , char * argv [])
+{
+ const char * uri_string = "mongodb://localhost:27017" ;
+ mongoc_uri_t * uri ;
+ mongoc_client_t * client ;
+ mongoc_database_t * database ;
+ mongoc_collection_t * collection ;
+ bson_t * command , reply , * insert ;
+ bson_error_t error ;
+ char * str ;
+ bool retval ;
+
+ /*
+ * Required to initialize libmongoc's internals
+ */
+ mongoc_init ();
+
+ /*
+ * Optionally get MongoDB URI from command line
+ */
+ if ( argc > 1 ) {
+ uri_string = argv [ 1 ];
+ }
+
+ /*
+ * Safely create a MongoDB URI object from the given string
+ */
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ /*
+ * Create a new client instance
+ */
+ client = mongoc_client_new_from_uri ( uri );
+ if ( ! client ) {
+ return EXIT_FAILURE ;
+ }
+
+ /*
+ * Register the application name so we can track it in the profile logs
+ * on the server. This can also be done from the URI (see other examples).
+ */
+ mongoc_client_set_appname ( client , "connect-example" );
+
+ /*
+ * Get a handle on the database "db_name" and collection "coll_name"
+ */
+ database = mongoc_client_get_database ( client , "db_name" );
+ collection = mongoc_client_get_collection ( client , "db_name" , "coll_name" );
+
+ /*
+ * Do work. This example pings the database, prints the result as JSON and
+ * performs an insert
+ */
+ command = BCON_NEW ( "ping" , BCON_INT32 ( 1 ));
+
+ retval = mongoc_client_command_simple (
+ client , "admin" , command , NULL , & reply , & error );
+
+ if ( ! retval ) {
+ fprintf ( stderr , "%s \n " , error . message );
+ return EXIT_FAILURE ;
+ }
+
+ str = bson_as_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+
+ insert = BCON_NEW ( "hello" , BCON_UTF8 ( "world" ));
+
+ if ( ! mongoc_collection_insert_one ( collection , insert , NULL , NULL , & error )) {
+ fprintf ( stderr , "%s \n " , error . message );
+ }
+
+ bson_destroy ( insert );
+ bson_destroy ( & reply );
+ bson_destroy ( command );
+ bson_free ( str );
+
+ /*
+ * Release our handles and clean up libmongoc
+ */
+ mongoc_collection_destroy ( collection );
+ mongoc_database_destroy ( database );
+ mongoc_uri_destroy ( uri );
+ mongoc_client_destroy ( client );
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+
+
+
+Documents are stored in MongoDB’s data format, BSON. The C driver uses libbson to create BSON documents. There are several ways to construct them: appending key-value pairs, using BCON, or parsing JSON.
+
+Appending BSON
+A BSON document, represented as a bson_t in code, can be constructed one field at a time using libbson’s append functions.
+For example, to create a document like this:
+ {
+ born : ISODate("1906-12-09"),
+ died : ISODate("1992-01-01"),
+ name : {
+ first : "Grace",
+ last : "Hopper"
+ },
+ languages : [ "MATH-MATIC", "FLOW-MATIC", "COBOL" ],
+ degrees: [ { degree: "BA", school: "Vassar" }, { degree: "PhD", school: "Yale" } ]
+}
+
+
+Use the following code:
+#include <bson/bson.h>
+
+int
+main ( int argc ,
+ char * argv [])
+{
+ struct tm born = { 0 };
+ struct tm died = { 0 };
+ const char * lang_names [] = { "MATH-MATIC" , "FLOW-MATIC" , "COBOL" };
+ const char * schools [] = { "Vassar" , "Yale" };
+ const char * degrees [] = { "BA" , "PhD" };
+ uint32_t i ;
+ char buf [ 16 ];
+ const char * key ;
+ size_t keylen ;
+ bson_t * document ;
+ bson_t child ;
+ bson_t child2 ;
+ char * str ;
+
+ document = bson_new ();
+
+ /*
+ * Append { "born" : ISODate("1906-12-09") } to the document.
+ * Passing -1 for the length argument tells libbson to calculate the string length.
+ */
+ born . tm_year = 6 ; /* years are 1900-based */
+ born . tm_mon = 11 ; /* months are 0-based */
+ born . tm_mday = 9 ;
+ bson_append_date_time ( document , "born" , -1 , mktime ( & born ) * 1000 );
+
+ /*
+ * Append { "died" : ISODate("1992-01-01") } to the document.
+ */
+ died . tm_year = 92 ;
+ died . tm_mon = 0 ;
+ died . tm_mday = 1 ;
+
+ /*
+ * For convenience, this macro passes length -1 by default.
+ */
+ BSON_APPEND_DATE_TIME ( document , "died" , mktime ( & died ) * 1000 );
+
+ /*
+ * Append a subdocument.
+ */
+ BSON_APPEND_DOCUMENT_BEGIN ( document , "name" , & child );
+ BSON_APPEND_UTF8 ( & child , "first" , "Grace" );
+ BSON_APPEND_UTF8 ( & child , "last" , "Hopper" );
+ bson_append_document_end ( document , & child );
+
+ /*
+ * Append array of strings. Generate keys "0", "1", "2".
+ */
+ BSON_APPEND_ARRAY_BEGIN ( document , "languages" , & child );
+ for ( i = 0 ; i < sizeof lang_names / sizeof ( char * ); ++ i ) {
+ keylen = bson_uint32_to_string ( i , & key , buf , sizeof buf );
+ bson_append_utf8 ( & child , key , ( int ) keylen , lang_names [ i ], -1 );
+ }
+ bson_append_array_end ( document , & child );
+
+ /*
+ * Array of subdocuments:
+ * degrees: [ { degree: "BA", school: "Vassar" }, ... ]
+ */
+ BSON_APPEND_ARRAY_BEGIN ( document , "degrees" , & child );
+ for ( i = 0 ; i < sizeof degrees / sizeof ( char * ); ++ i ) {
+ keylen = bson_uint32_to_string ( i , & key , buf , sizeof buf );
+ bson_append_document_begin ( & child , key , ( int ) keylen , & child2 );
+ BSON_APPEND_UTF8 ( & child2 , "degree" , degrees [ i ]);
+ BSON_APPEND_UTF8 ( & child2 , "school" , schools [ i ]);
+ bson_append_document_end ( & child , & child2 );
+ }
+ bson_append_array_end ( document , & child );
+
+ /*
+ * Print the document as a JSON string.
+ */
+ str = bson_as_canonical_extended_json ( document , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+
+ /*
+ * Clean up allocated bson documents.
+ */
+ bson_destroy ( document );
+ return 0 ;
+}
+
+
+See the libbson documentation for all of the types that can be appended to a bson_t .
+
+
+Using BCON
+BSON C Object Notation , BCON for short, is an alternative way of constructing BSON documents in a manner closer to the intended format. It has less type-safety than BSON’s append functions but results in less code.
+#include <bson/bson.h>
+
+int
+main ( int argc ,
+ char * argv [])
+{
+ struct tm born = { 0 };
+ struct tm died = { 0 };
+ bson_t * document ;
+ char * str ;
+
+ born . tm_year = 6 ;
+ born . tm_mon = 11 ;
+ born . tm_mday = 9 ;
+
+ died . tm_year = 92 ;
+ died . tm_mon = 0 ;
+ died . tm_mday = 1 ;
+
+ document = BCON_NEW (
+ "born" , BCON_DATE_TIME ( mktime ( & born ) * 1000 ),
+ "died" , BCON_DATE_TIME ( mktime ( & died ) * 1000 ),
+ "name" , "{" ,
+ "first" , BCON_UTF8 ( "Grace" ),
+ "last" , BCON_UTF8 ( "Hopper" ),
+ "}" ,
+ "languages" , "[" ,
+ BCON_UTF8 ( "MATH-MATIC" ),
+ BCON_UTF8 ( "FLOW-MATIC" ),
+ BCON_UTF8 ( "COBOL" ),
+ "]" ,
+ "degrees" , "[" ,
+ "{" , "degree" , BCON_UTF8 ( "BA" ), "school" , BCON_UTF8 ( "Vassar" ), "}" ,
+ "{" , "degree" , BCON_UTF8 ( "PhD" ), "school" , BCON_UTF8 ( "Yale" ), "}" ,
+ "]" );
+
+ /*
+ * Print the document as a JSON string.
+ */
+ str = bson_as_canonical_extended_json ( document , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+
+ /*
+ * Clean up allocated bson documents.
+ */
+ bson_destroy ( document );
+ return 0 ;
+}
+
+
+Notice that BCON can create arrays, subdocuments and arbitrary fields.
+
+
+Creating BSON from JSON
+For single documents, BSON can be created from JSON strings via bson_new_from_json .
+#include <bson/bson.h>
+
+int
+main ( int argc ,
+ char * argv [])
+{
+ bson_error_t error ;
+ bson_t * bson ;
+ char * string ;
+
+ const char * json = "{ \" name \" : { \" first \" : \" Grace \" , \" last \" : \" Hopper \" }}" ;
+ bson = bson_new_from_json (( const uint8_t * ) json , -1 , & error );
+
+ if ( ! bson ) {
+ fprintf ( stderr , "%s \n " , error . message );
+ return EXIT_FAILURE ;
+ }
+
+ string = bson_as_canonical_extended_json ( bson , NULL );
+ printf ( "%s \n " , string );
+ bson_free ( string );
+
+ return 0 ;
+}
+
+
+To initialize BSON from a sequence of JSON documents, use bson_json_reader_t .
+
+
+
+
+This section demonstrates the basics of using the C Driver to interact with MongoDB.
+
+Inserting a Document
+To insert documents into a collection, first obtain a handle to a mongoc_collection_t via a mongoc_client_t . Then, use mongoc_collection_insert_one() to add BSON documents to the collection. This example inserts into the database “mydb” and collection “mycoll”.
+When finished, ensure that allocated structures are freed by using their respective destroy functions.
+#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+int
+main ( int argc ,
+ char * argv [])
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ bson_error_t error ;
+ bson_oid_t oid ;
+ bson_t * doc ;
+
+ mongoc_init ();
+
+ client = mongoc_client_new ( "mongodb://localhost:27017/?appname=insert-example" );
+ collection = mongoc_client_get_collection ( client , "mydb" , "mycoll" );
+
+ doc = bson_new ();
+ bson_oid_init ( & oid , NULL );
+ BSON_APPEND_OID ( doc , "_id" , & oid );
+ BSON_APPEND_UTF8 ( doc , "hello" , "world" );
+
+ if ( ! mongoc_collection_insert_one (
+ collection , doc , NULL , NULL , & error )) {
+ fprintf ( stderr , "%s \n " , error . message );
+ }
+
+ bson_destroy ( doc );
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+ mongoc_cleanup ();
+
+ return 0 ;
+}
+
+
+Compile the code and run it:
+ $ gcc -o insert insert.c $(pkg-config --cflags --libs libmongoc-1.0)
+$ ./insert
+
+
+On Windows:
+ C:\> cl.exe /IC:\mongo-c-driver\include\libbson-1.0 /IC:\mongo-c-driver\include\libmongoc-1.0 insert.c
+C:\> insert
+
+
+To verify that the insert succeeded, connect with the MongoDB shell.
+ $ mongo
+MongoDB shell version: 3.0.6
+connecting to: test
+> use mydb
+switched to db mydb
+> db.mycoll.find()
+{ "_id" : ObjectId("55ef43766cb5f36a3bae6ee4"), "hello" : "world" }
+>
+
+
+
+
+Finding a Document
+To query a MongoDB collection with the C driver, use the function mongoc_collection_find_with_opts() . This returns a cursor to the matching documents. The following examples iterate through the result cursors and print the matches to stdout as JSON strings.
+Use a document as a query specifier; for example,
+
+will match any document with a field named “color” with value “red”. An empty document {} can be used to match all documents.
+This first example uses an empty query specifier to find all documents in the database “mydb” and collection “mycoll”.
+#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ mongoc_cursor_t * cursor ;
+ const bson_t * doc ;
+ bson_t * query ;
+ char * str ;
+
+ mongoc_init ();
+
+ client =
+ mongoc_client_new ( "mongodb://localhost:27017/?appname=find-example" );
+ collection = mongoc_client_get_collection ( client , "mydb" , "mycoll" );
+ query = bson_new ();
+ cursor = mongoc_collection_find_with_opts ( collection , query , NULL , NULL );
+
+ while ( mongoc_cursor_next ( cursor , & doc )) {
+ str = bson_as_canonical_extended_json ( doc , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ }
+
+ bson_destroy ( query );
+ mongoc_cursor_destroy ( cursor );
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+ mongoc_cleanup ();
+
+ return 0 ;
+}
+
+
+Compile the code and run it:
+ $ gcc -o find find.c $(pkg-config --cflags --libs libmongoc-1.0)
+$ ./find
+{ "_id" : { "$oid" : "55ef43766cb5f36a3bae6ee4" }, "hello" : "world" }
+
+
+On Windows:
+ C:\> cl.exe /IC:\mongo-c-driver\include\libbson-1.0 /IC:\mongo-c-driver\include\libmongoc-1.0 find.c
+C:\> find
+{ "_id" : { "$oid" : "55ef43766cb5f36a3bae6ee4" }, "hello" : "world" }
+
+
+To look for a specific document, add a specifier to query . This example adds a call to BSON_APPEND_UTF8() to look for all documents matching {"hello" : "world"} .
+#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ mongoc_cursor_t * cursor ;
+ const bson_t * doc ;
+ bson_t * query ;
+ char * str ;
+
+ mongoc_init ();
+
+ client = mongoc_client_new (
+ "mongodb://localhost:27017/?appname=find-specific-example" );
+ collection = mongoc_client_get_collection ( client , "mydb" , "mycoll" );
+ query = bson_new ();
+ BSON_APPEND_UTF8 ( query , "hello" , "world" );
+
+ cursor = mongoc_collection_find_with_opts ( collection , query , NULL , NULL );
+
+ while ( mongoc_cursor_next ( cursor , & doc )) {
+ str = bson_as_canonical_extended_json ( doc , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ }
+
+ bson_destroy ( query );
+ mongoc_cursor_destroy ( cursor );
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+ mongoc_cleanup ();
+
+ return 0 ;
+}
+
+
+ $ gcc -o find-specific find-specific.c $(pkg-config --cflags --libs libmongoc-1.0)
+$ ./find-specific
+{ "_id" : { "$oid" : "55ef43766cb5f36a3bae6ee4" }, "hello" : "world" }
+
+
+ C:\> cl.exe /IC:\mongo-c-driver\include\libbson-1.0 /IC:\mongo-c-driver\include\libmongoc-1.0 find-specific.c
+C:\> find-specific
+{ "_id" : { "$oid" : "55ef43766cb5f36a3bae6ee4" }, "hello" : "world" }
+
+
+
+
+Updating a Document
+This code snippet gives an example of using mongoc_collection_update_one() to update the fields of a document.
+Using the “mydb” database, the following example inserts an example document into the “mycoll” collection. Then, using its _id field, the document is updated with different values and a new field.
+#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_collection_t * collection ;
+ mongoc_client_t * client ;
+ bson_error_t error ;
+ bson_oid_t oid ;
+ bson_t * doc = NULL ;
+ bson_t * update = NULL ;
+ bson_t * query = NULL ;
+
+ mongoc_init ();
+
+ client =
+ mongoc_client_new ( "mongodb://localhost:27017/?appname=update-example" );
+ collection = mongoc_client_get_collection ( client , "mydb" , "mycoll" );
+
+ bson_oid_init ( & oid , NULL );
+ doc = BCON_NEW ( "_id" , BCON_OID ( & oid ), "key" , BCON_UTF8 ( "old_value" ));
+
+ if ( ! mongoc_collection_insert_one ( collection , doc , NULL , & error )) {
+ fprintf ( stderr , "%s \n " , error . message );
+ goto fail ;
+ }
+
+ query = BCON_NEW ( "_id" , BCON_OID ( & oid ));
+ update = BCON_NEW ( "$set" ,
+ "{" ,
+ "key" ,
+ BCON_UTF8 ( "new_value" ),
+ "updated" ,
+ BCON_BOOL ( true ),
+ "}" );
+
+ if ( ! mongoc_collection_update_one (
+ collection , query , update , NULL , NULL , & error )) {
+ fprintf ( stderr , "%s \n " , error . message );
+ goto fail ;
+ }
+
+fail :
+ if ( doc )
+ bson_destroy ( doc );
+ if ( query )
+ bson_destroy ( query );
+ if ( update )
+ bson_destroy ( update );
+
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+ mongoc_cleanup ();
+
+ return 0 ;
+}
+
+
+Compile the code and run it:
+ $ gcc -o update update.c $(pkg-config --cflags --libs libmongoc-1.0)
+$ ./update
+
+
+On Windows:
+ C:\> cl.exe /IC:\mongo-c-driver\include\libbson-1.0 /IC:\mongo-c-driver\include\libmongoc-1.0 update.c
+C:\> update
+{ "_id" : { "$oid" : "55ef43766cb5f36a3bae6ee4" }, "hello" : "world" }
+
+
+To verify that the update succeeded, connect with the MongoDB shell.
+ $ mongo
+MongoDB shell version: 3.0.6
+connecting to: test
+> use mydb
+switched to db mydb
+> db.mycoll.find({"updated" : true})
+{ "_id" : ObjectId("55ef549236fe322f9490e17b"), "updated" : true, "key" : "new_value" }
+>
+
+
+
+
+Deleting a Document
+This example illustrates the use of mongoc_collection_delete_one() to delete a document.
+The following code inserts a sample document into the database “mydb” and collection “mycoll”. Then, it deletes all documents matching {"hello" : "world"} .
+#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ bson_error_t error ;
+ bson_oid_t oid ;
+ bson_t * doc ;
+
+ mongoc_init ();
+
+ client =
+ mongoc_client_new ( "mongodb://localhost:27017/?appname=delete-example" );
+ collection = mongoc_client_get_collection ( client , "test" , "test" );
+
+ doc = bson_new ();
+ bson_oid_init ( & oid , NULL );
+ BSON_APPEND_OID ( doc , "_id" , & oid );
+ BSON_APPEND_UTF8 ( doc , "hello" , "world" );
+
+ if ( ! mongoc_collection_insert_one ( collection , doc , NULL , & error )) {
+ fprintf ( stderr , "Insert failed: %s \n " , error . message );
+ }
+
+ bson_destroy ( doc );
+
+ doc = bson_new ();
+ BSON_APPEND_OID ( doc , "_id" , & oid );
+
+ if ( ! mongoc_collection_delete_one (
+ collection , doc , NULL , NULL , & error )) {
+ fprintf ( stderr , "Delete failed: %s \n " , error . message );
+ }
+
+ bson_destroy ( doc );
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+ mongoc_cleanup ();
+
+ return 0 ;
+}
+
+
+Compile the code and run it:
+ $ gcc -o delete delete.c $(pkg-config --cflags --libs libmongoc-1.0)
+$ ./delete
+
+
+On Windows:
+ C:\> cl.exe /IC:\mongo-c-driver\include\libbson-1.0 /IC:\mongo-c-driver\include\libmongoc-1.0 delete.c
+C:\> delete
+
+
+Use the MongoDB shell to prove that the documents have been removed successfully.
+ $ mongo
+MongoDB shell version: 3.0.6
+connecting to: test
+> use mydb
+switched to db mydb
+> db.mycoll.count({"hello" : "world"})
+0
+>
+
+
+
+
+Counting Documents
+Counting the number of documents in a MongoDB collection is similar to performing a find operation . This example counts the number of documents matching {"hello" : "world"} in the database “mydb” and collection “mycoll”.
+#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ bson_error_t error ;
+ bson_t * doc ;
+ int64_t count ;
+
+ mongoc_init ();
+
+ client =
+ mongoc_client_new ( "mongodb://localhost:27017/?appname=count-example" );
+ collection = mongoc_client_get_collection ( client , "mydb" , "mycoll" );
+ doc = bson_new_from_json (
+ ( const uint8_t * ) "{ \" hello \" : \" world \" }" , -1 , & error );
+
+ count = mongoc_collection_count (
+ collection , MONGOC_QUERY_NONE , doc , 0 , 0 , NULL , & error );
+
+ if ( count < 0 ) {
+ fprintf ( stderr , "%s \n " , error . message );
+ } else {
+ printf ( "%" PRId64 " \n " , count );
+ }
+
+ bson_destroy ( doc );
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+ mongoc_cleanup ();
+
+ return 0 ;
+}
+
+
+Compile the code and run it:
+ $ gcc -o count count.c $(pkg-config --cflags --libs libmongoc-1.0)
+$ ./count
+1
+
+
+On Windows:
+ C:\> cl.exe /IC:\mongo-c-driver\include\libbson-1.0 /IC:\mongo-c-driver\include\libmongoc-1.0 count.c
+C:\> count
+1
+
+
+
+
+
+
+The driver provides helper functions for executing MongoDB commands on client, database and collection structures. These functions return cursors ; the _simple variants return booleans indicating success or failure.
+This example executes the collStats command against the collection “mycoll” in database “mydb”.
+#include <bson/bson.h>
+#include <mongoc/mongoc.h>
+#include <stdio.h>
+
+int
+main ( int argc , char * argv [])
+{
+ mongoc_client_t * client ;
+ mongoc_collection_t * collection ;
+ bson_error_t error ;
+ bson_t * command ;
+ bson_t reply ;
+ char * str ;
+
+ mongoc_init ();
+
+ client = mongoc_client_new (
+ "mongodb://localhost:27017/?appname=executing-example" );
+ collection = mongoc_client_get_collection ( client , "mydb" , "mycoll" );
+
+ command = BCON_NEW ( "collStats" , BCON_UTF8 ( "mycoll" ));
+ if ( mongoc_collection_command_simple (
+ collection , command , NULL , & reply , & error )) {
+ str = bson_as_canonical_extended_json ( & reply , NULL );
+ printf ( "%s \n " , str );
+ bson_free ( str );
+ } else {
+ fprintf ( stderr , "Failed to run command: %s \n " , error . message );
+ }
+
+ bson_destroy ( command );
+ bson_destroy ( & reply );
+ mongoc_collection_destroy ( collection );
+ mongoc_client_destroy ( client );
+ mongoc_cleanup ();
+
+ return 0 ;
+}
+
+
+Compile the code and run it:
+ $ gcc -o executing executing.c $(pkg-config --cflags --libs libmongoc-1.0)
+$ ./executing
+{ "ns" : "mydb.mycoll", "count" : 1, "size" : 48, "avgObjSize" : 48, "numExtents" : 1, "storageSize" : 8192,
+"lastExtentSize" : 8192.000000, "paddingFactor" : 1.000000, "userFlags" : 1, "capped" : false, "nindexes" : 1,
+"indexDetails" : { }, "totalIndexSize" : 8176, "indexSizes" : { "_id_" : 8176 }, "ok" : 1.000000 }
+
+
+On Windows:
+ C:\> cl.exe /IC:\mongo-c-driver\include\libbson-1.0 /IC:\mongo-c-driver\include\libmongoc-1.0 executing.c
+C:\> executing
+{ "ns" : "mydb.mycoll", "count" : 1, "size" : 48, "avgObjSize" : 48, "numExtents" : 1, "storageSize" : 8192,
+"lastExtentSize" : 8192.000000, "paddingFactor" : 1.000000, "userFlags" : 1, "capped" : false, "nindexes" : 1,
+"indexDetails" : { }, "totalIndexSize" : 8176, "indexSizes" : { "_id_" : 8176 }, "ok" : 1.000000 }
+
+
+
+
+
+The MongoDB C Driver is thread-unaware in the vast majority of its operations. This means it is up to the programmer to guarantee thread-safety.
+However, mongoc_client_pool_t is thread-safe and is used to fetch a mongoc_client_t in a thread-safe manner. After retrieving a client from the pool, the client structure should be considered owned by the calling thread. When the thread is finished, the client should be placed back into the pool.
+
+
example-pool.c
+
/* gcc example-pool.c -o example-pool $(pkg-config --cflags --libs
+ * libmongoc-1.0) */
+
+/* ./example-pool [CONNECTION_STRING] */
+
+#include <mongoc/mongoc.h>
+#include <pthread.h>
+#include <stdio.h>
+
+static pthread_mutex_t mutex ;
+static bool in_shutdown = false ;
+
+static void *
+worker ( void * data )
+{
+ mongoc_client_pool_t * pool = data ;
+ mongoc_client_t * client ;
+ bson_t ping = BSON_INITIALIZER ;
+ bson_error_t error ;
+ bool r ;
+
+ BSON_APPEND_INT32 ( & ping , "ping" , 1 );
+
+ while ( true ) {
+ client = mongoc_client_pool_pop ( pool );
+ /* Do something with client. If you are writing an HTTP server, you
+ * probably only want to hold onto the client for the portion of the
+ * request performing database queries.
+ */
+ r = mongoc_client_command_simple (
+ client , "admin" , & ping , NULL , NULL , & error );
+
+ if ( ! r ) {
+ fprintf ( stderr , "%s \n " , error . message );
+ }
+
+ mongoc_client_pool_push ( pool , client );
+
+ pthread_mutex_lock ( & mutex );
+ if ( in_shutdown || ! r ) {
+ pthread_mutex_unlock ( & mutex );
+ break ;
+ }
+
+ pthread_mutex_unlock ( & mutex );
+ }
+
+ bson_destroy ( & ping );
+ return NULL ;
+}
+
+int
+main ( int argc , char * argv [])
+{
+ const char * uri_string = "mongodb://127.0.0.1/?appname=pool-example" ;
+ mongoc_uri_t * uri ;
+ bson_error_t error ;
+ mongoc_client_pool_t * pool ;
+ pthread_t threads [ 10 ];
+ unsigned i ;
+ void * ret ;
+
+ pthread_mutex_init ( & mutex , NULL );
+ mongoc_init ();
+
+ if ( argc > 1 ) {
+ uri_string = argv [ 1 ];
+ }
+
+ uri = mongoc_uri_new_with_error ( uri_string , & error );
+ if ( ! uri ) {
+ fprintf ( stderr ,
+ "failed to parse URI: %s \n "
+ "error message: %s \n " ,
+ uri_string ,
+ error . message );
+ return EXIT_FAILURE ;
+ }
+
+ pool = mongoc_client_pool_new ( uri );
+ mongoc_client_pool_set_error_api ( pool , 2 );
+
+ for ( i = 0 ; i < 10 ; i ++ ) {
+ pthread_create ( & threads [ i ], NULL , worker , pool );
+ }
+
+ sleep ( 10 );
+ pthread_mutex_lock ( & mutex );
+ in_shutdown = true ;
+ pthread_mutex_unlock ( & mutex );
+
+ for ( i = 0 ; i < 10 ; i ++ ) {
+ pthread_join ( threads [ i ], & ret );
+ }
+
+ mongoc_client_pool_destroy ( pool );
+ mongoc_uri_destroy ( uri );
+
+ mongoc_cleanup ();
+
+ return EXIT_SUCCESS ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/using_client_side_encryption.html b/libmongoc/1.23.4/using_client_side_encryption.html
new file mode 100644
index 0000000000000000000000000000000000000000..d503a6bc1060e5d78f7f04119b6f2c5c763fe692
--- /dev/null
+++ b/libmongoc/1.23.4/using_client_side_encryption.html
@@ -0,0 +1,1275 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Using Client-Side Field Level Encryption — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Using Client-Side Field Level Encryption
+New in MongoDB 4.2, Client-Side Field Level Encryption (also referred to as Client-Side Encryption) allows administrators and developers to encrypt specific data fields in addition to other MongoDB encryption features.
+With Client-Side Encryption, developers can encrypt fields client side without any server-side configuration or directives. Client-Side Encryption supports workloads where applications must guarantee that unauthorized parties, including server administrators, cannot read the encrypted data.
+Automatic encryption, where sensitive fields in commands are encrypted automatically, requires an Enterprise-only process to do query analysis.
+
+Installation
+
+libmongocrypt
+There is a separate library, libmongocrypt , that must be installed prior to configuring libmongoc to enable Client-Side Encryption.
+libmongocrypt depends on libbson. To build libmongoc with Client-Side Encryption support you must:
+
+Install libbson
+Build and install libmongocrypt
+Build libmongoc
+
+To install libbson, follow the instructions to install with a package manager: Install libbson with a Package Manager or build from source with cmake (disable building libmongoc with -DENABLE_MONGOC=OFF ):
+ $ cd mongo-c-driver
+$ mkdir cmake-build && cd cmake-build
+$ cmake -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF -DENABLE_MONGOC=OFF ..
+$ cmake --build . --target install
+
+
+To build and install libmongocrypt, clone the repository and configure as follows:
+ $ cd libmongocrypt
+$ mkdir cmake-build && cd cmake-build
+$ cmake -DENABLE_SHARED_BSON=ON ..
+$ cmake --build . --target install
+
+
+Then, you should be able to build libmongoc with Client-Side Encryption.
+ $ cd mongo-c-driver
+$ mkdir cmake-build && cd cmake-build
+$ cmake -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF -DENABLE_MONGOC=ON -DENABLE_CLIENT_SIDE_ENCRYPTION=ON ..
+$ cmake --build . --target install
+
+
+
+
+mongocryptd
+The mongocryptd binary is required for automatic Client-Side Encryption and is included as a component in the MongoDB Enterprise Server package . For detailed installation instructions see the MongoDB documentation on mongocryptd .
+mongocryptd performs the following:
+
+Parses the automatic encryption rules specified to the database connection. If the JSON schema contains invalid automatic encryption syntax or any document validation syntax, mongocryptd returns an error.
+Uses the specified automatic encryption rules to mark fields in read and write operations for encryption.
+Rejects read/write operations that may return unexpected or incorrect results when applied to an encrypted field. For supported and unsupported operations, see Read/Write Support with Automatic Field Level Encryption .
+
+A mongoc_client_t configured with auto encryption will automatically spawn the mongocryptd process from the application’s PATH . Applications can control the spawning behavior as part of the automatic encryption options. For example, to set a custom path to the mongocryptd process, set the mongocryptdSpawnPath with mongoc_auto_encryption_opts_set_extra() .
+bson_t * extra = BCON_NEW ( "mongocryptdSpawnPath" , "/path/to/mongocryptd" );
+mongoc_auto_encryption_opts_set_extra ( opts , extra );
+
+
+To control the logging output of mongocryptd pass mongocryptdSpawnArgs to mongoc_auto_encryption_opts_set_extra() :
+bson_t * extra = BCON_NEW ( "mongocryptdSpawnArgs" ,
+ "[" , "--logpath=/path/to/mongocryptd.log" , "--logappend" , "]" );
+mongoc_auto_encryption_opts_set_extra ( opts , extra );
+
+
+If your application wishes to manage the mongocryptd process manually, it is possible to disable spawning mongocryptd :
+bson_t * extra = BCON_NEW ( "mongocryptdBypassSpawn" ,
+ BCON_BOOL ( true ), "mongocryptdURI" , "mongodb://localhost:27020" );
+mongoc_auto_encryption_opts_set_extra ( opts , extra );
+
+
+mongocryptd is only responsible for supporting automatic Client-Side Encryption in the driver and does not itself perform any encryption or decryption.
+
+
+
+Automatic Client-Side Field Level Encryption
+Automatic Client-Side Encryption is enabled by calling mongoc_client_enable_auto_encryption() on a mongoc_client_t . The following examples show how to set up automatic client-side field level encryption using mongoc_client_encryption_t to create a new encryption data key.
+
+
Note
+
Automatic client-side field level encryption requires MongoDB 4.2 enterprise or a MongoDB 4.2 Atlas cluster. The community version of the server supports automatic decryption as well as Explicit Encryption .
+
+
+Providing Local Automatic Encryption Rules
+The following example shows how to specify automatic encryption rules using a schema map set with mongoc_auto_encryption_opts_set_schema_map() . The automatic encryption rules are expressed using a strict subset of the JSON Schema syntax.
+Supplying a schema map provides more security than relying on JSON Schemas obtained from the server. It protects against a malicious server advertising a false JSON Schema, which could trick the client into sending unencrypted data that should be encrypted.
+JSON Schemas supplied in the schema map only apply to configuring automatic client-side field level encryption. Other validation rules in the JSON schema will not be enforced by the driver and will result in an error:
+
+
client-side-encryption-schema-map.c
+
#include <mongoc/mongoc.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+#include "client-side-encryption-helpers.h"
+
+/* Helper method to create a new data key in the key vault, a schema to use that
+ * key, and writes the schema to a file for later use. */
+static bool
+create_schema_file ( bson_t * kms_providers ,
+ const char * keyvault_db ,
+ const char * keyvault_coll ,
+ mongoc_client_t * keyvault_client ,
+ bson_error_t * error )
+{
+ mongoc_client_encryption_t * client_encryption = NULL ;
+ mongoc_client_encryption_opts_t * client_encryption_opts = NULL ;
+ mongoc_client_encryption_datakey_opts_t * datakey_opts = NULL ;
+ bson_value_t datakey_id = { 0 };
+ char * keyaltnames [] = { "mongoc_encryption_example_1" };
+ bson_t * schema = NULL ;
+ char * schema_string = NULL ;
+ size_t schema_string_len ;
+ FILE * outfile = NULL ;
+ bool ret = false ;
+
+ client_encryption_opts = mongoc_client_encryption_opts_new ();
+ mongoc_client_encryption_opts_set_kms_providers ( client_encryption_opts ,
+ kms_providers );
+ mongoc_client_encryption_opts_set_keyvault_namespace (
+ client_encryption_opts , keyvault_db , keyvault_coll );
+ mongoc_client_encryption_opts_set_keyvault_client ( client_encryption_opts ,
+ keyvault_client );
+
+ client_encryption =
+ mongoc_client_encryption_new ( client_encryption_opts , error );
+ if ( ! client_encryption ) {
+ goto fail ;
+ }
+
+ /* Create a new data key and json schema for the encryptedField.
+ * https://dochub.mongodb.org/core/client-side-field-level-encryption-automatic-encryption-rules
+ */
+ datakey_opts = mongoc_client_encryption_datakey_opts_new ();
+ mongoc_client_encryption_datakey_opts_set_keyaltnames (
+ datakey_opts , keyaltnames , 1 );
+ if ( ! mongoc_client_encryption_create_datakey (
+ client_encryption , "local" , datakey_opts , & datakey_id , error )) {
+ goto fail ;
+ }
+
+ /* Create a schema describing that "encryptedField" is a string encrypted
+ * with the newly created data key using deterministic encryption. */
+ schema = BCON_NEW ( "properties" ,
+ "{" ,
+ "encryptedField" ,
+ "{" ,
+ "encrypt" ,
+ "{" ,
+ "keyId" ,
+ "[" ,
+ BCON_BIN ( datakey_id . value . v_binary . subtype ,
+ datakey_id . value . v_binary . data ,
+ datakey_id . value . v_binary . data_len ),
+ "]" ,
+ "bsonType" ,
+ "string" ,
+ "algorithm" ,
+ MONGOC_AEAD_AES_256_CBC_HMAC_SHA_512_DETERMINISTIC ,
+ "}" ,
+ "}" ,
+ "}" ,
+ "bsonType" ,
+ "object" );
+
+ /* Use canonical JSON so that other drivers and tools will be
+ * able to parse the MongoDB extended JSON file. */
+ schema_string = bson_as_canonical_extended_json ( schema , & schema_string_len );
+ outfile = fopen ( "jsonSchema.json" , "w" );
+ if ( 0 == fwrite ( schema_string , sizeof ( char ), schema_string_len , outfile )) {
+ fprintf ( stderr , "failed to write to file \n " );
+ goto fail ;
+ }
+
+ ret = true ;
+fail :
+ mongoc_client_encryption_destroy ( client_encryption );
+ mongoc_client_encryption_datakey_opts_destroy ( datakey_opts );
+ mongoc_client_encryption_opts_destroy ( client_encryption_opts );
+ bson_free ( schema_string );
+ bson_destroy ( schema );
+ bson_value_destroy ( & datakey_id );
+ if ( outfile ) {
+ fclose ( outfile );
+ }
+ return ret ;
+}
+
+/* This example demonstrates how to use automatic encryption with a client-side
+ * schema map using the enterprise version of MongoDB */
+int
+main ( void )
+{
+/* The collection used to store the encryption data keys. */
+#define KEYVAULT_DB "encryption"
+#define KEYVAULT_COLL "__libmongocTestKeyVault"
+/* The collection used to store the encrypted documents in this example. */
+#define ENCRYPTED_DB "test"
+#define ENCRYPTED_COLL "coll"
+
+ int exit_status = EXIT_FAILURE ;
+ bool ret ;
+ uint8_t * local_masterkey = NULL ;
+ uint32_t local_masterkey_len ;
+ bson_t * kms_providers = NULL ;
+ bson_error_t error = { 0 };
+ bson_t * index_keys = NULL ;
+ char * index_name = NULL ;
+ bson_t * create_index_cmd = NULL ;
+ bson_json_reader_t * reader = NULL ;
+ bson_t schema = BSON_INITIALIZER ;
+ bson_t * schema_map = NULL ;
+
+ /* The MongoClient used to access the key vault (keyvault_namespace). */
+ mongoc_client_t * keyvault_client = NULL ;
+ mongoc_collection_t * keyvault_coll = NULL ;
+ mongoc_auto_encryption_opts_t * auto_encryption_opts = NULL ;
+ mongoc_client_t * client = NULL ;
+ mongoc_collection_t * coll = NULL ;
+ bson_t * to_insert = NULL ;
+ mongoc_client_t * unencrypted_client = NULL ;
+ mongoc_collection_t * unencrypted_coll = NULL ;
+
+ mongoc_init ();
+
+ /* Configure the master key. This must be the same master key that was used
+ * to create the encryption key. */
+ local_masterkey =
+ hex_to_bin ( getenv ( "LOCAL_MASTERKEY" ), & local_masterkey_len );
+ if ( ! local_masterkey || local_masterkey_len != 96 ) {
+ fprintf ( stderr ,
+ "Specify LOCAL_MASTERKEY environment variable as a "
+ "secure random 96 byte hex value. \n " );
+ goto fail ;
+ }
+
+ kms_providers = BCON_NEW ( "local" ,
+ "{" ,
+ "key" ,
+ BCON_BIN ( 0 , local_masterkey , local_masterkey_len ),
+ "}" );
+
+ /* Set up the key vault for this example. */
+ keyvault_client = mongoc_client_new (
+ "mongodb://localhost/?appname=client-side-encryption-keyvault" );
+ keyvault_coll = mongoc_client_get_collection (
+ keyvault_client , KEYVAULT_DB , KEYVAULT_COLL );
+ mongoc_collection_drop ( keyvault_coll , NULL );
+
+ /* Create a unique index to ensure that two data keys cannot share the same
+ * keyAltName. This is recommended practice for the key vault. */
+ index_keys = BCON_NEW ( "keyAltNames" , BCON_INT32 ( 1 ));
+ index_name = mongoc_collection_keys_to_index_string ( index_keys );
+ create_index_cmd = BCON_NEW ( "createIndexes" ,
+ KEYVAULT_COLL ,
+ "indexes" ,
+ "[" ,
+ "{" ,
+ "key" ,
+ BCON_DOCUMENT ( index_keys ),
+ "name" ,
+ index_name ,
+ "unique" ,
+ BCON_BOOL ( true ),
+ "partialFilterExpression" ,
+ "{" ,
+ "keyAltNames" ,
+ "{" ,
+ "$exists" ,
+ BCON_BOOL ( true ),
+ "}" ,
+ "}" ,
+ "}" ,
+ "]" );
+ ret = mongoc_client_command_simple ( keyvault_client ,
+ KEYVAULT_DB ,
+ create_index_cmd ,
+ NULL /* read prefs */ ,
+ NULL /* reply */ ,
+ & error );
+
+ if ( ! ret ) {
+ goto fail ;
+ }
+
+ /* Create a new data key and a schema using it for encryption. Save the
+ * schema to the file jsonSchema.json */
+ ret = create_schema_file (
+ kms_providers , KEYVAULT_DB , KEYVAULT_COLL , keyvault_client , & error );
+
+ if ( ! ret ) {
+ goto fail ;
+ }
+
+ /* Load the JSON Schema and construct the local schema_map option. */
+ reader = bson_json_reader_new_from_file ( "jsonSchema.json" , & error );
+ if ( ! reader ) {
+ goto fail ;
+ }
+
+ bson_json_reader_read ( reader , & schema , & error );
+
+ /* Construct the schema map, mapping the namespace of the collection to the
+ * schema describing encryption. */
+ schema_map =
+ BCON_NEW ( ENCRYPTED_DB "." ENCRYPTED_COLL , BCON_DOCUMENT ( & schema ));
+
+ auto_encryption_opts = mongoc_auto_encryption_opts_new ();
+ mongoc_auto_encryption_opts_set_keyvault_client ( auto_encryption_opts ,
+ keyvault_client );
+ mongoc_auto_encryption_opts_set_keyvault_namespace (
+ auto_encryption_opts , KEYVAULT_DB , KEYVAULT_COLL );
+ mongoc_auto_encryption_opts_set_kms_providers ( auto_encryption_opts ,
+ kms_providers );
+ mongoc_auto_encryption_opts_set_schema_map ( auto_encryption_opts ,
+ schema_map );
+
+ client =
+ mongoc_client_new ( "mongodb://localhost/?appname=client-side-encryption" );
+
+ /* Enable automatic encryption. It will determine that encryption is
+ * necessary from the schema map instead of relying on the server to provide
+ * a schema. */
+ ret = mongoc_client_enable_auto_encryption (
+ client , auto_encryption_opts , & error );
+ if ( ! ret ) {
+ goto fail ;
+ }
+
+ coll = mongoc_client_get_collection ( client , ENCRYPTED_DB , ENCRYPTED_COLL );
+
+ /* Clear old data */
+ mongoc_collection_drop ( coll , NULL );
+
+ to_insert = BCON_NEW ( "encryptedField" , "123456789" );
+ ret = mongoc_collection_insert_one (
+ coll , to_insert , NULL /* opts */ , NULL /* reply */ , & error );
+ if ( ! ret ) {
+ goto fail ;
+ }
+ printf ( "decrypted document: " );
+ if ( ! print_one_document ( coll , & error )) {
+ goto fail ;
+ }
+ printf ( " \n " );
+
+ unencrypted_client = mongoc_client_new (
+ "mongodb://localhost/?appname=client-side-encryption-unencrypted" );
+ unencrypted_coll = mongoc_client_get_collection (
+ unencrypted_client , ENCRYPTED_DB , ENCRYPTED_COLL );
+ printf ( "encrypted document: " );
+ if ( ! print_one_document ( unencrypted_coll , & error )) {
+ goto fail ;
+ }
+ printf ( " \n " );
+
+ exit_status = EXIT_SUCCESS ;
+fail :
+ if ( error . code ) {
+ fprintf ( stderr , "error: %s \n " , error . message );
+ }
+
+ bson_free ( local_masterkey );
+ bson_destroy ( kms_providers );
+ mongoc_collection_destroy ( keyvault_coll );
+ bson_destroy ( index_keys );
+ bson_free ( index_name );
+ bson_destroy ( create_index_cmd );
+ bson_json_reader_destroy ( reader );
+ mongoc_auto_encryption_opts_destroy ( auto_encryption_opts );
+ mongoc_collection_destroy ( coll );
+ mongoc_client_destroy ( client );
+ bson_destroy ( to_insert );
+ mongoc_collection_destroy ( unencrypted_coll );
+ mongoc_client_destroy ( unencrypted_client );
+ mongoc_client_destroy ( keyvault_client );
+ bson_destroy ( & schema );
+ bson_destroy ( schema_map );
+ mongoc_cleanup ();
+ return exit_status ;
+}
+
+
+
+
+
+Server-Side Field Level Encryption Enforcement
+The MongoDB 4.2 server supports using schema validation to enforce encryption of specific fields in a collection. This schema validation will prevent an application from inserting unencrypted values for any fields marked with the “encrypt” JSON schema keyword.
+The following example shows how to set up automatic client-side field level encryption using mongoc_client_encryption_t to create a new encryption data key and create a collection with the Automatic Encryption JSON Schema Syntax:
+
+
client-side-encryption-server-schema.c
+
#include <mongoc/mongoc.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+#include "client-side-encryption-helpers.h"
+
+/* Helper method to create and return a JSON schema to use for encryption.
+The caller will use the returned schema for server-side encryption validation.
+*/
+static bson_t *
+create_schema ( bson_t * kms_providers ,
+ const char * keyvault_db ,
+ const char * keyvault_coll ,
+ mongoc_client_t * keyvault_client ,
+ bson_error_t * error )
+{
+ mongoc_client_encryption_t * client_encryption = NULL ;
+ mongoc_client_encryption_opts_t * client_encryption_opts = NULL ;
+ mongoc_client_encryption_datakey_opts_t * datakey_opts = NULL ;
+ bson_value_t datakey_id = { 0 };
+ char * keyaltnames [] = { "mongoc_encryption_example_2" };
+ bson_t * schema = NULL ;
+
+ client_encryption_opts = mongoc_client_encryption_opts_new ();
+ mongoc_client_encryption_opts_set_kms_providers ( client_encryption_opts ,
+ kms_providers );
+ mongoc_client_encryption_opts_set_keyvault_namespace (
+ client_encryption_opts , keyvault_db , keyvault_coll );
+ mongoc_client_encryption_opts_set_keyvault_client ( client_encryption_opts ,
+ keyvault_client );
+
+ client_encryption =
+ mongoc_client_encryption_new ( client_encryption_opts , error );
+ if ( ! client_encryption ) {
+ goto fail ;
+ }
+
+ /* Create a new data key and json schema for the encryptedField.
+ * https://dochub.mongodb.org/core/client-side-field-level-encryption-automatic-encryption-rules
+ */
+ datakey_opts = mongoc_client_encryption_datakey_opts_new ();
+ mongoc_client_encryption_datakey_opts_set_keyaltnames (
+ datakey_opts , keyaltnames , 1 );
+ if ( ! mongoc_client_encryption_create_datakey (
+ client_encryption , "local" , datakey_opts , & datakey_id , error )) {
+ goto fail ;
+ }
+
+ /* Create a schema describing that "encryptedField" is a string encrypted
+ * with the newly created data key using deterministic encryption. */
+ schema = BCON_NEW ( "properties" ,
+ "{" ,
+ "encryptedField" ,
+ "{" ,
+ "encrypt" ,
+ "{" ,
+ "keyId" ,
+ "[" ,
+ BCON_BIN ( datakey_id . value . v_binary . subtype ,
+ datakey_id . value . v_binary . data ,
+ datakey_id . value . v_binary . data_len ),
+ "]" ,
+ "bsonType" ,
+ "string" ,
+ "algorithm" ,
+ MONGOC_AEAD_AES_256_CBC_HMAC_SHA_512_DETERMINISTIC ,
+ "}" ,
+ "}" ,
+ "}" ,
+ "bsonType" ,
+ "object" );
+
+fail :
+ mongoc_client_encryption_destroy ( client_encryption );
+ mongoc_client_encryption_datakey_opts_destroy ( datakey_opts );
+ mongoc_client_encryption_opts_destroy ( client_encryption_opts );
+ bson_value_destroy ( & datakey_id );
+ return schema ;
+}
+
+/* This example demonstrates how to use automatic encryption with a server-side
+ * schema using the enterprise version of MongoDB */
+int
+main ( void )
+{
+/* The collection used to store the encryption data keys. */
+#define KEYVAULT_DB "encryption"
+#define KEYVAULT_COLL "__libmongocTestKeyVault"
+/* The collection used to store the encrypted documents in this example. */
+#define ENCRYPTED_DB "test"
+#define ENCRYPTED_COLL "coll"
+
+ int exit_status = EXIT_FAILURE ;
+ bool ret ;
+ uint8_t * local_masterkey = NULL ;
+ uint32_t local_masterkey_len ;
+ bson_t * kms_providers = NULL ;
+ bson_error_t error = { 0 };
+ bson_t * index_keys = NULL ;
+ char * index_name = NULL ;
+ bson_t * create_index_cmd = NULL ;
+ bson_json_reader_t * reader = NULL ;
+ bson_t * schema = NULL ;
+
+ /* The MongoClient used to access the key vault (keyvault_namespace). */
+ mongoc_client_t * keyvault_client = NULL ;
+ mongoc_collection_t * keyvault_coll = NULL ;
+ mongoc_auto_encryption_opts_t * auto_encryption_opts = NULL ;
+ mongoc_client_t * client = NULL ;
+ mongoc_collection_t * coll = NULL ;
+ bson_t * to_insert = NULL ;
+ mongoc_client_t * unencrypted_client = NULL ;
+ mongoc_collection_t * unencrypted_coll = NULL ;
+ bson_t * create_cmd = NULL ;
+ bson_t * create_cmd_opts = NULL ;
+ mongoc_write_concern_t * wc = NULL ;
+
+ mongoc_init ();
+
+ /* Configure the master key. This must be the same master key that was used
+ * to create
+ * the encryption key. */
+ local_masterkey =
+ hex_to_bin ( getenv ( "LOCAL_MASTERKEY" ), & local_masterkey_len );
+ if ( ! local_masterkey || local_masterkey_len != 96 ) {
+ fprintf ( stderr ,
+ "Specify LOCAL_MASTERKEY environment variable as a "
+ "secure random 96 byte hex value. \n " );
+ goto fail ;
+ }
+
+ kms_providers = BCON_NEW ( "local" ,
+ "{" ,
+ "key" ,
+ BCON_BIN ( 0 , local_masterkey , local_masterkey_len ),
+ "}" );
+
+ /* Set up the key vault for this example. */
+ keyvault_client = mongoc_client_new (
+ "mongodb://localhost/?appname=client-side-encryption-keyvault" );
+ keyvault_coll = mongoc_client_get_collection (
+ keyvault_client , KEYVAULT_DB , KEYVAULT_COLL );
+ mongoc_collection_drop ( keyvault_coll , NULL );
+
+ /* Create a unique index to ensure that two data keys cannot share the same
+ * keyAltName. This is recommended practice for the key vault. */
+ index_keys = BCON_NEW ( "keyAltNames" , BCON_INT32 ( 1 ));
+ index_name = mongoc_collection_keys_to_index_string ( index_keys );
+ create_index_cmd = BCON_NEW ( "createIndexes" ,
+ KEYVAULT_COLL ,
+ "indexes" ,
+ "[" ,
+ "{" ,
+ "key" ,
+ BCON_DOCUMENT ( index_keys ),
+ "name" ,
+ index_name ,
+ "unique" ,
+ BCON_BOOL ( true ),
+ "partialFilterExpression" ,
+ "{" ,
+ "keyAltNames" ,
+ "{" ,
+ "$exists" ,
+ BCON_BOOL ( true ),
+ "}" ,
+ "}" ,
+ "}" ,
+ "]" );
+ ret = mongoc_client_command_simple ( keyvault_client ,
+ KEYVAULT_DB ,
+ create_index_cmd ,
+ NULL /* read prefs */ ,
+ NULL /* reply */ ,
+ & error );
+
+ if ( ! ret ) {
+ goto fail ;
+ }
+
+ auto_encryption_opts = mongoc_auto_encryption_opts_new ();
+ mongoc_auto_encryption_opts_set_keyvault_client ( auto_encryption_opts ,
+ keyvault_client );
+ mongoc_auto_encryption_opts_set_keyvault_namespace (
+ auto_encryption_opts , KEYVAULT_DB , KEYVAULT_COLL );
+ mongoc_auto_encryption_opts_set_kms_providers ( auto_encryption_opts ,
+ kms_providers );
+ schema = create_schema (
+ kms_providers , KEYVAULT_DB , KEYVAULT_COLL , keyvault_client , & error );
+
+ if ( ! schema ) {
+ goto fail ;
+ }
+
+ client =
+ mongoc_client_new ( "mongodb://localhost/?appname=client-side-encryption" );
+ ret = mongoc_client_enable_auto_encryption (
+ client , auto_encryption_opts , & error );
+ if ( ! ret ) {
+ goto fail ;
+ }
+
+ coll = mongoc_client_get_collection ( client , ENCRYPTED_DB , ENCRYPTED_COLL );
+
+ /* Clear old data */
+ mongoc_collection_drop ( coll , NULL );
+
+ /* Create the collection with the encryption JSON Schema. */
+ create_cmd = BCON_NEW ( "create" ,
+ ENCRYPTED_COLL ,
+ "validator" ,
+ "{" ,
+ "$jsonSchema" ,
+ BCON_DOCUMENT ( schema ),
+ "}" );
+ wc = mongoc_write_concern_new ();
+ mongoc_write_concern_set_wmajority ( wc , 0 );
+ create_cmd_opts = bson_new ();
+ mongoc_write_concern_append ( wc , create_cmd_opts );
+ ret = mongoc_client_command_with_opts ( client ,
+ ENCRYPTED_DB ,
+ create_cmd ,
+ NULL /* read prefs */ ,
+ create_cmd_opts ,
+ NULL /* reply */ ,
+ & error );
+ if ( ! ret ) {
+ goto fail ;
+ }
+
+ to_insert = BCON_NEW ( "encryptedField" , "123456789" );
+ ret = mongoc_collection_insert_one (
+ coll , to_insert , NULL /* opts */ , NULL /* reply */ , & error );
+ if ( ! ret ) {
+ goto fail ;
+ }
+ printf ( "decrypted document: " );
+ if ( ! print_one_document ( coll , & error )) {
+ goto fail ;
+ }
+ printf ( " \n " );
+
+ unencrypted_client = mongoc_client_new (
+ "mongodb://localhost/?appname=client-side-encryption-unencrypted" );
+ unencrypted_coll = mongoc_client_get_collection (
+ unencrypted_client , ENCRYPTED_DB , ENCRYPTED_COLL );
+ printf ( "encrypted document: " );
+ if ( ! print_one_document ( unencrypted_coll , & error )) {
+ goto fail ;
+ }
+ printf ( " \n " );
+
+ /* Expect a server-side error if inserting with the unencrypted collection.
+ */
+ ret = mongoc_collection_insert_one (
+ unencrypted_coll , to_insert , NULL /* opts */ , NULL /* reply */ , & error );
+ if ( ! ret ) {
+ printf ( "insert with unencrypted collection failed: %s \n " , error . message );
+ memset ( & error , 0 , sizeof ( error ));
+ }
+
+ exit_status = EXIT_SUCCESS ;
+fail :
+ if ( error . code ) {
+ fprintf ( stderr , "error: %s \n " , error . message );
+ }
+
+ bson_free ( local_masterkey );
+ bson_destroy ( kms_providers );
+ mongoc_collection_destroy ( keyvault_coll );
+ bson_destroy ( index_keys );
+ bson_free ( index_name );
+ bson_destroy ( create_index_cmd );
+ bson_json_reader_destroy ( reader );
+ mongoc_auto_encryption_opts_destroy ( auto_encryption_opts );
+ mongoc_collection_destroy ( coll );
+ mongoc_client_destroy ( client );
+ bson_destroy ( to_insert );
+ mongoc_collection_destroy ( unencrypted_coll );
+ mongoc_client_destroy ( unencrypted_client );
+ mongoc_client_destroy ( keyvault_client );
+ bson_destroy ( schema );
+ bson_destroy ( create_cmd );
+ bson_destroy ( create_cmd_opts );
+ mongoc_write_concern_destroy ( wc );
+
+ mongoc_cleanup ();
+ return exit_status ;
+}
+
+
+
+
+
+Explicit Encryption
+Explicit encryption is a MongoDB community feature and does not use the mongocryptd process. Explicit encryption is provided by the mongoc_client_encryption_t class, for example:
+
+
client-side-encryption-explicit.c
+
#include <mongoc/mongoc.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+#include "client-side-encryption-helpers.h"
+
+/* This example demonstrates how to use explicit encryption and decryption using
+ * the community version of MongoDB */
+int
+main ( void )
+{
+/* The collection used to store the encryption data keys. */
+#define KEYVAULT_DB "encryption"
+#define KEYVAULT_COLL "__libmongocTestKeyVault"
+/* The collection used to store the encrypted documents in this example. */
+#define ENCRYPTED_DB "test"
+#define ENCRYPTED_COLL "coll"
+
+ int exit_status = EXIT_FAILURE ;
+ bool ret ;
+ uint8_t * local_masterkey = NULL ;
+ uint32_t local_masterkey_len ;
+ bson_t * kms_providers = NULL ;
+ bson_error_t error = { 0 };
+ bson_t * index_keys = NULL ;
+ char * index_name = NULL ;
+ bson_t * create_index_cmd = NULL ;
+ bson_t * schema = NULL ;
+ mongoc_client_t * client = NULL ;
+ mongoc_collection_t * coll = NULL ;
+ mongoc_collection_t * keyvault_coll = NULL ;
+ bson_t * to_insert = NULL ;
+ bson_t * create_cmd = NULL ;
+ bson_t * create_cmd_opts = NULL ;
+ mongoc_write_concern_t * wc = NULL ;
+ mongoc_client_encryption_t * client_encryption = NULL ;
+ mongoc_client_encryption_opts_t * client_encryption_opts = NULL ;
+ mongoc_client_encryption_datakey_opts_t * datakey_opts = NULL ;
+ char * keyaltnames [] = { "mongoc_encryption_example_3" };
+ bson_value_t datakey_id = { 0 };
+ bson_value_t encrypted_field = { 0 };
+ bson_value_t to_encrypt = { 0 };
+ mongoc_client_encryption_encrypt_opts_t * encrypt_opts = NULL ;
+ bson_value_t decrypted = { 0 };
+
+ mongoc_init ();
+
+ /* Configure the master key. This must be the same master key that was used
+ * to create the encryption key. */
+ local_masterkey =
+ hex_to_bin ( getenv ( "LOCAL_MASTERKEY" ), & local_masterkey_len );
+ if ( ! local_masterkey || local_masterkey_len != 96 ) {
+ fprintf ( stderr ,
+ "Specify LOCAL_MASTERKEY environment variable as a "
+ "secure random 96 byte hex value. \n " );
+ goto fail ;
+ }
+
+ kms_providers = BCON_NEW ( "local" ,
+ "{" ,
+ "key" ,
+ BCON_BIN ( 0 , local_masterkey , local_masterkey_len ),
+ "}" );
+
+ /* The mongoc_client_t used to read/write application data. */
+ client =
+ mongoc_client_new ( "mongodb://localhost/?appname=client-side-encryption" );
+ coll = mongoc_client_get_collection ( client , ENCRYPTED_DB , ENCRYPTED_COLL );
+
+ /* Clear old data */
+ mongoc_collection_drop ( coll , NULL );
+
+ /* Set up the key vault for this example. */
+ keyvault_coll =
+ mongoc_client_get_collection ( client , KEYVAULT_DB , KEYVAULT_COLL );
+ mongoc_collection_drop ( keyvault_coll , NULL );
+
+ /* Create a unique index to ensure that two data keys cannot share the same
+ * keyAltName. This is recommended practice for the key vault. */
+ index_keys = BCON_NEW ( "keyAltNames" , BCON_INT32 ( 1 ));
+ index_name = mongoc_collection_keys_to_index_string ( index_keys );
+ create_index_cmd = BCON_NEW ( "createIndexes" ,
+ KEYVAULT_COLL ,
+ "indexes" ,
+ "[" ,
+ "{" ,
+ "key" ,
+ BCON_DOCUMENT ( index_keys ),
+ "name" ,
+ index_name ,
+ "unique" ,
+ BCON_BOOL ( true ),
+ "partialFilterExpression" ,
+ "{" ,
+ "keyAltNames" ,
+ "{" ,
+ "$exists" ,
+ BCON_BOOL ( true ),
+ "}" ,
+ "}" ,
+ "}" ,
+ "]" );
+ ret = mongoc_client_command_simple ( client ,
+ KEYVAULT_DB ,
+ create_index_cmd ,
+ NULL /* read prefs */ ,
+ NULL /* reply */ ,
+ & error );
+
+ if ( ! ret ) {
+ goto fail ;
+ }
+
+ client_encryption_opts = mongoc_client_encryption_opts_new ();
+ mongoc_client_encryption_opts_set_kms_providers ( client_encryption_opts ,
+ kms_providers );
+ mongoc_client_encryption_opts_set_keyvault_namespace (
+ client_encryption_opts , KEYVAULT_DB , KEYVAULT_COLL );
+
+ /* Set a mongoc_client_t to use for reading/writing to the key vault. This
+ * can be the same mongoc_client_t used by the main application. */
+ mongoc_client_encryption_opts_set_keyvault_client ( client_encryption_opts ,
+ client );
+ client_encryption =
+ mongoc_client_encryption_new ( client_encryption_opts , & error );
+ if ( ! client_encryption ) {
+ goto fail ;
+ }
+
+ /* Create a new data key for the encryptedField.
+ * https://dochub.mongodb.org/core/client-side-field-level-encryption-automatic-encryption-rules
+ */
+ datakey_opts = mongoc_client_encryption_datakey_opts_new ();
+ mongoc_client_encryption_datakey_opts_set_keyaltnames (
+ datakey_opts , keyaltnames , 1 );
+ if ( ! mongoc_client_encryption_create_datakey (
+ client_encryption , "local" , datakey_opts , & datakey_id , & error )) {
+ goto fail ;
+ }
+
+ /* Explicitly encrypt a field */
+ encrypt_opts = mongoc_client_encryption_encrypt_opts_new ();
+ mongoc_client_encryption_encrypt_opts_set_algorithm (
+ encrypt_opts , MONGOC_AEAD_AES_256_CBC_HMAC_SHA_512_DETERMINISTIC );
+ mongoc_client_encryption_encrypt_opts_set_keyid ( encrypt_opts , & datakey_id );
+ to_encrypt . value_type = BSON_TYPE_UTF8 ;
+ to_encrypt . value . v_utf8 . str = "123456789" ;
+ to_encrypt . value . v_utf8 . len = strlen ( to_encrypt . value . v_utf8 . str );
+
+ ret = mongoc_client_encryption_encrypt (
+ client_encryption , & to_encrypt , encrypt_opts , & encrypted_field , & error );
+ if ( ! ret ) {
+ goto fail ;
+ }
+
+ to_insert = bson_new ();
+ BSON_APPEND_VALUE ( to_insert , "encryptedField" , & encrypted_field );
+ ret = mongoc_collection_insert_one (
+ coll , to_insert , NULL /* opts */ , NULL /* reply */ , & error );
+ if ( ! ret ) {
+ goto fail ;
+ }
+
+ printf ( "encrypted document: " );
+ if ( ! print_one_document ( coll , & error )) {
+ goto fail ;
+ }
+ printf ( " \n " );
+
+ /* Explicitly decrypt a field */
+ ret = mongoc_client_encryption_decrypt (
+ client_encryption , & encrypted_field , & decrypted , & error );
+ if ( ! ret ) {
+ goto fail ;
+ }
+ printf ( "decrypted value: %s \n " , decrypted . value . v_utf8 . str );
+
+ exit_status = EXIT_SUCCESS ;
+fail :
+ if ( error . code ) {
+ fprintf ( stderr , "error: %s \n " , error . message );
+ }
+
+ bson_free ( local_masterkey );
+ bson_destroy ( kms_providers );
+ mongoc_collection_destroy ( keyvault_coll );
+ bson_destroy ( index_keys );
+ bson_free ( index_name );
+ bson_destroy ( create_index_cmd );
+ mongoc_collection_destroy ( coll );
+ mongoc_client_destroy ( client );
+ bson_destroy ( to_insert );
+ bson_destroy ( schema );
+ bson_destroy ( create_cmd );
+ bson_destroy ( create_cmd_opts );
+ mongoc_write_concern_destroy ( wc );
+ mongoc_client_encryption_destroy ( client_encryption );
+ mongoc_client_encryption_datakey_opts_destroy ( datakey_opts );
+ mongoc_client_encryption_opts_destroy ( client_encryption_opts );
+ bson_value_destroy ( & encrypted_field );
+ mongoc_client_encryption_encrypt_opts_destroy ( encrypt_opts );
+ bson_value_destroy ( & decrypted );
+ bson_value_destroy ( & datakey_id );
+
+ mongoc_cleanup ();
+ return exit_status ;
+}
+
+
+
+
+
+Explicit Encryption with Automatic Decryption
+Although automatic encryption requires MongoDB 4.2 enterprise or a MongoDB 4.2 Atlas cluster, automatic decryption is supported for all users. To configure automatic decryption without automatic encryption set bypass_auto_encryption=True in mongoc_auto_encryption_opts_t :
+
+
client-side-encryption-auto-decryption.c
+
#include <mongoc/mongoc.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+#include "client-side-encryption-helpers.h"
+
+/* This example demonstrates how to set up automatic decryption without
+ * automatic encryption using the community version of MongoDB */
+int
+main ( void )
+{
+/* The collection used to store the encryption data keys. */
+#define KEYVAULT_DB "encryption"
+#define KEYVAULT_COLL "__libmongocTestKeyVault"
+/* The collection used to store the encrypted documents in this example. */
+#define ENCRYPTED_DB "test"
+#define ENCRYPTED_COLL "coll"
+
+ int exit_status = EXIT_FAILURE ;
+ bool ret ;
+ uint8_t * local_masterkey = NULL ;
+ uint32_t local_masterkey_len ;
+ bson_t * kms_providers = NULL ;
+ bson_error_t error = { 0 };
+ bson_t * index_keys = NULL ;
+ char * index_name = NULL ;
+ bson_t * create_index_cmd = NULL ;
+ bson_t * schema = NULL ;
+ mongoc_client_t * client = NULL ;
+ mongoc_collection_t * coll = NULL ;
+ mongoc_collection_t * keyvault_coll = NULL ;
+ bson_t * to_insert = NULL ;
+ bson_t * create_cmd = NULL ;
+ bson_t * create_cmd_opts = NULL ;
+ mongoc_write_concern_t * wc = NULL ;
+ mongoc_client_encryption_t * client_encryption = NULL ;
+ mongoc_client_encryption_opts_t * client_encryption_opts = NULL ;
+ mongoc_client_encryption_datakey_opts_t * datakey_opts = NULL ;
+ char * keyaltnames [] = { "mongoc_encryption_example_4" };
+ bson_value_t datakey_id = { 0 };
+ bson_value_t encrypted_field = { 0 };
+ bson_value_t to_encrypt = { 0 };
+ mongoc_client_encryption_encrypt_opts_t * encrypt_opts = NULL ;
+ bson_value_t decrypted = { 0 };
+ mongoc_auto_encryption_opts_t * auto_encryption_opts = NULL ;
+ mongoc_client_t * unencrypted_client = NULL ;
+ mongoc_collection_t * unencrypted_coll = NULL ;
+
+ mongoc_init ();
+
+ /* Configure the master key. This must be the same master key that was used
+ * to create the encryption key. */
+ local_masterkey =
+ hex_to_bin ( getenv ( "LOCAL_MASTERKEY" ), & local_masterkey_len );
+ if ( ! local_masterkey || local_masterkey_len != 96 ) {
+ fprintf ( stderr ,
+ "Specify LOCAL_MASTERKEY environment variable as a "
+ "secure random 96 byte hex value. \n " );
+ goto fail ;
+ }
+
+ kms_providers = BCON_NEW ( "local" ,
+ "{" ,
+ "key" ,
+ BCON_BIN ( 0 , local_masterkey , local_masterkey_len ),
+ "}" );
+
+ client =
+ mongoc_client_new ( "mongodb://localhost/?appname=client-side-encryption" );
+ auto_encryption_opts = mongoc_auto_encryption_opts_new ();
+ mongoc_auto_encryption_opts_set_keyvault_namespace (
+ auto_encryption_opts , KEYVAULT_DB , KEYVAULT_COLL );
+ mongoc_auto_encryption_opts_set_kms_providers ( auto_encryption_opts ,
+ kms_providers );
+
+ /* Setting bypass_auto_encryption to true disables automatic encryption but
+ * keeps the automatic decryption behavior. bypass_auto_encryption will also
+ * disable spawning mongocryptd */
+ mongoc_auto_encryption_opts_set_bypass_auto_encryption ( auto_encryption_opts ,
+ true );
+
+ /* Once bypass_auto_encryption is set, community users can enable auto
+ * encryption on the client. This will, in fact, only perform automatic
+ * decryption. */
+ ret = mongoc_client_enable_auto_encryption (
+ client , auto_encryption_opts , & error );
+ if ( ! ret ) {
+ goto fail ;
+ }
+
+ /* Now that automatic decryption is on, we can test it by inserting a
+ * document with an explicitly encrypted value into the collection. When we
+ * look up the document later, it should be automatically decrypted for us.
+ */
+ coll = mongoc_client_get_collection ( client , ENCRYPTED_DB , ENCRYPTED_COLL );
+
+ /* Clear old data */
+ mongoc_collection_drop ( coll , NULL );
+
+ /* Set up the key vault for this example. */
+ keyvault_coll =
+ mongoc_client_get_collection ( client , KEYVAULT_DB , KEYVAULT_COLL );
+ mongoc_collection_drop ( keyvault_coll , NULL );
+
+ /* Create a unique index to ensure that two data keys cannot share the same
+ * keyAltName. This is recommended practice for the key vault. */
+ index_keys = BCON_NEW ( "keyAltNames" , BCON_INT32 ( 1 ));
+ index_name = mongoc_collection_keys_to_index_string ( index_keys );
+ create_index_cmd = BCON_NEW ( "createIndexes" ,
+ KEYVAULT_COLL ,
+ "indexes" ,
+ "[" ,
+ "{" ,
+ "key" ,
+ BCON_DOCUMENT ( index_keys ),
+ "name" ,
+ index_name ,
+ "unique" ,
+ BCON_BOOL ( true ),
+ "partialFilterExpression" ,
+ "{" ,
+ "keyAltNames" ,
+ "{" ,
+ "$exists" ,
+ BCON_BOOL ( true ),
+ "}" ,
+ "}" ,
+ "}" ,
+ "]" );
+ ret = mongoc_client_command_simple ( client ,
+ KEYVAULT_DB ,
+ create_index_cmd ,
+ NULL /* read prefs */ ,
+ NULL /* reply */ ,
+ & error );
+
+ if ( ! ret ) {
+ goto fail ;
+ }
+
+ client_encryption_opts = mongoc_client_encryption_opts_new ();
+ mongoc_client_encryption_opts_set_kms_providers ( client_encryption_opts ,
+ kms_providers );
+ mongoc_client_encryption_opts_set_keyvault_namespace (
+ client_encryption_opts , KEYVAULT_DB , KEYVAULT_COLL );
+
+ /* The key vault client is used for reading to/from the key vault. This can
+ * be the same mongoc_client_t used by the application. */
+ mongoc_client_encryption_opts_set_keyvault_client ( client_encryption_opts ,
+ client );
+ client_encryption =
+ mongoc_client_encryption_new ( client_encryption_opts , & error );
+ if ( ! client_encryption ) {
+ goto fail ;
+ }
+
+ /* Create a new data key for the encryptedField.
+ * https://dochub.mongodb.org/core/client-side-field-level-encryption-automatic-encryption-rules
+ */
+ datakey_opts = mongoc_client_encryption_datakey_opts_new ();
+ mongoc_client_encryption_datakey_opts_set_keyaltnames (
+ datakey_opts , keyaltnames , 1 );
+ ret = mongoc_client_encryption_create_datakey (
+ client_encryption , "local" , datakey_opts , & datakey_id , & error );
+ if ( ! ret ) {
+ goto fail ;
+ }
+
+ /* Explicitly encrypt a field. */
+ encrypt_opts = mongoc_client_encryption_encrypt_opts_new ();
+ mongoc_client_encryption_encrypt_opts_set_algorithm (
+ encrypt_opts , MONGOC_AEAD_AES_256_CBC_HMAC_SHA_512_DETERMINISTIC );
+ mongoc_client_encryption_encrypt_opts_set_keyaltname (
+ encrypt_opts , "mongoc_encryption_example_4" );
+ to_encrypt . value_type = BSON_TYPE_UTF8 ;
+ to_encrypt . value . v_utf8 . str = "123456789" ;
+ to_encrypt . value . v_utf8 . len = strlen ( to_encrypt . value . v_utf8 . str );
+
+ ret = mongoc_client_encryption_encrypt (
+ client_encryption , & to_encrypt , encrypt_opts , & encrypted_field , & error );
+ if ( ! ret ) {
+ goto fail ;
+ }
+
+ to_insert = bson_new ();
+ BSON_APPEND_VALUE ( to_insert , "encryptedField" , & encrypted_field );
+ ret = mongoc_collection_insert_one (
+ coll , to_insert , NULL /* opts */ , NULL /* reply */ , & error );
+ if ( ! ret ) {
+ goto fail ;
+ }
+
+ /* When we retrieve the document, any encrypted fields will get automatically
+ * decrypted by the driver. */
+ printf ( "decrypted document: " );
+ if ( ! print_one_document ( coll , & error )) {
+ goto fail ;
+ }
+ printf ( " \n " );
+
+ unencrypted_client =
+ mongoc_client_new ( "mongodb://localhost/?appname=client-side-encryption" );
+ unencrypted_coll = mongoc_client_get_collection (
+ unencrypted_client , ENCRYPTED_DB , ENCRYPTED_COLL );
+
+ printf ( "encrypted document: " );
+ if ( ! print_one_document ( unencrypted_coll , & error )) {
+ goto fail ;
+ }
+ printf ( " \n " );
+
+ exit_status = EXIT_SUCCESS ;
+fail :
+ if ( error . code ) {
+ fprintf ( stderr , "error: %s \n " , error . message );
+ }
+
+ bson_free ( local_masterkey );
+ bson_destroy ( kms_providers );
+ mongoc_collection_destroy ( keyvault_coll );
+ bson_destroy ( index_keys );
+ bson_free ( index_name );
+ bson_destroy ( create_index_cmd );
+ mongoc_collection_destroy ( coll );
+ mongoc_client_destroy ( client );
+ bson_destroy ( to_insert );
+ bson_destroy ( schema );
+ bson_destroy ( create_cmd );
+ bson_destroy ( create_cmd_opts );
+ mongoc_write_concern_destroy ( wc );
+ mongoc_client_encryption_destroy ( client_encryption );
+ mongoc_client_encryption_datakey_opts_destroy ( datakey_opts );
+ mongoc_client_encryption_opts_destroy ( client_encryption_opts );
+ bson_value_destroy ( & encrypted_field );
+ mongoc_client_encryption_encrypt_opts_destroy ( encrypt_opts );
+ bson_value_destroy ( & decrypted );
+ bson_value_destroy ( & datakey_id );
+ mongoc_collection_destroy ( unencrypted_coll );
+ mongoc_client_destroy ( unencrypted_client );
+ mongoc_auto_encryption_opts_destroy ( auto_encryption_opts );
+
+ mongoc_cleanup ();
+ return exit_status ;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/1.23.4/visual-studio-guide.html b/libmongoc/1.23.4/visual-studio-guide.html
new file mode 100644
index 0000000000000000000000000000000000000000..cf763a0454559005bf1ec8071a4fa9f9a5b63f23
--- /dev/null
+++ b/libmongoc/1.23.4/visual-studio-guide.html
@@ -0,0 +1,183 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Using libmongoc in a Microsoft Visual Studio project — libmongoc 1.23.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Using libmongoc in a Microsoft Visual Studio project
+Download and install libmongoc on your system , then open Visual Studio, select “File→New→Project…”, and create a new Win32 Console Application.
+
+Remember to switch the platform from 32-bit to 64-bit:
+
+Right-click on your console application in the Solution Explorer and select “Properties”. Choose to edit properties for “All Configurations”, expand the “C/C++” options and choose “General”. Add to the “Additional Include Directories” these paths:
+ C:\mongo-c-driver\include\libbson-1.0
+C:\mongo-c-driver\include\libmongoc-1.0
+
+
+
+(If you chose a different CMAKE_INSTALL_PREFIX when you ran CMake , your include paths will be different.)
+Also in the Properties dialog, expand the “Linker” options and choose “Input”, and add to the “Additional Dependencies” these libraries:
+ C:\mongo-c-driver\lib\bson-1.0.lib
+C:\mongo-c-driver\lib\mongoc-1.0.lib
+
+
+
+Adding these libraries as dependencies provides linker symbols to build your application, but to actually run it, libbson’s and libmongoc’s DLLs must be in your executable path. Select “Debugging” in the Properties dialog, and set the “Environment” option to:
+ PATH=c:/mongo-c-driver/bin
+
+
+
+Finally, include “mongoc/mongoc.h” in your project’s “stdafx.h”:
+#include <mongoc/mongoc.h>
+
+
+
+Static linking
+Following the instructions above, you have dynamically linked your application to the libbson and libmongoc DLLs. This is usually the right choice. If you want to link statically instead, update your “Additional Dependencies” list by removing bson-1.0.lib and mongoc-1.0.lib and replacing them with these libraries:
+ C:\mongo-c-driver\lib\bson-static-1.0.lib
+C:\mongo-c-driver\lib\mongoc-static-1.0.lib
+ws2_32.lib
+Secur32.lib
+Crypt32.lib
+BCrypt.lib
+
+
+
+(To explain the purpose of each library: bson-static-1.0.lib and mongoc-static-1.0.lib are static archives of the driver code. The socket library ws2_32 is required by libbson, which uses the socket routine gethostname to help guarantee ObjectId uniqueness. The BCrypt library is used by libmongoc for TLS connections to MongoDB, and Secur32 and Crypt32 are required for enterprise authentication methods like Kerberos.)
+Finally, define two preprocessor symbols before including mongoc/mongoc.h in your stdafx.h :
+#define BSON_STATIC
+#define MONGOC_STATIC
+#include <mongoc/mongoc.h>
+
+
+Making these changes to your project is only required for static linking; for most people, the dynamic-linking instructions above are preferred.
+
+
+Next Steps
+Now you can build and debug applications in Visual Studio that use libbson and libmongoc. Proceed to Making a Connection in the tutorial to learn how connect to MongoDB and perform operations.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/libmongoc/_static/documentation_options.js b/libmongoc/_static/documentation_options.js
index d076224865256cb669bf8b0cac11eb8f7c85e4d8..65f4a28940f7caa7d79132d4b0fe5bfe0c4bdc0b 100644
--- a/libmongoc/_static/documentation_options.js
+++ b/libmongoc/_static/documentation_options.js
@@ -1,7 +1,7 @@
var DOCUMENTATION_OPTIONS = {
URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'),
- VERSION: '1.23.3',
- LANGUAGE: 'None',
+ VERSION: '1.23.4',
+ LANGUAGE: 'en',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: false,
diff --git a/libmongoc/_static/searchtools.js b/libmongoc/_static/searchtools.js
index 41b8336776442fbc64332ffbd3d2c1ddd8b3b9c2..024ac7c430a70907a6715006dc263b4f6d1976ba 100644
--- a/libmongoc/_static/searchtools.js
+++ b/libmongoc/_static/searchtools.js
@@ -227,105 +227,11 @@ var Scorer = {
-
-
-var splitChars = (function() {
- var result = {};
- var singles = [96, 180, 187, 191, 215, 247, 749, 885, 903, 907, 909, 930, 1014, 1648,
- 1748, 1809, 2416, 2473, 2481, 2526, 2601, 2609, 2612, 2615, 2653, 2702,
- 2706, 2729, 2737, 2740, 2857, 2865, 2868, 2910, 2928, 2948, 2961, 2971,
- 2973, 3085, 3089, 3113, 3124, 3213, 3217, 3241, 3252, 3295, 3341, 3345,
- 3369, 3506, 3516, 3633, 3715, 3721, 3736, 3744, 3748, 3750, 3756, 3761,
- 3781, 3912, 4239, 4347, 4681, 4695, 4697, 4745, 4785, 4799, 4801, 4823,
- 4881, 5760, 5901, 5997, 6313, 7405, 8024, 8026, 8028, 8030, 8117, 8125,
- 8133, 8181, 8468, 8485, 8487, 8489, 8494, 8527, 11311, 11359, 11687, 11695,
- 11703, 11711, 11719, 11727, 11735, 12448, 12539, 43010, 43014, 43019, 43587,
- 43696, 43713, 64286, 64297, 64311, 64317, 64319, 64322, 64325, 65141];
- var i, j, start, end;
- for (i = 0; i < singles.length; i++) {
- result[singles[i]] = true;
- }
- var ranges = [[0, 47], [58, 64], [91, 94], [123, 169], [171, 177], [182, 184], [706, 709],
- [722, 735], [741, 747], [751, 879], [888, 889], [894, 901], [1154, 1161],
- [1318, 1328], [1367, 1368], [1370, 1376], [1416, 1487], [1515, 1519], [1523, 1568],
- [1611, 1631], [1642, 1645], [1750, 1764], [1767, 1773], [1789, 1790], [1792, 1807],
- [1840, 1868], [1958, 1968], [1970, 1983], [2027, 2035], [2038, 2041], [2043, 2047],
- [2070, 2073], [2075, 2083], [2085, 2087], [2089, 2307], [2362, 2364], [2366, 2383],
- [2385, 2391], [2402, 2405], [2419, 2424], [2432, 2436], [2445, 2446], [2449, 2450],
- [2483, 2485], [2490, 2492], [2494, 2509], [2511, 2523], [2530, 2533], [2546, 2547],
- [2554, 2564], [2571, 2574], [2577, 2578], [2618, 2648], [2655, 2661], [2672, 2673],
- [2677, 2692], [2746, 2748], [2750, 2767], [2769, 2783], [2786, 2789], [2800, 2820],
- [2829, 2830], [2833, 2834], [2874, 2876], [2878, 2907], [2914, 2917], [2930, 2946],
- [2955, 2957], [2966, 2968], [2976, 2978], [2981, 2983], [2987, 2989], [3002, 3023],
- [3025, 3045], [3059, 3076], [3130, 3132], [3134, 3159], [3162, 3167], [3170, 3173],
- [3184, 3191], [3199, 3204], [3258, 3260], [3262, 3293], [3298, 3301], [3312, 3332],
- [3386, 3388], [3390, 3423], [3426, 3429], [3446, 3449], [3456, 3460], [3479, 3481],
- [3518, 3519], [3527, 3584], [3636, 3647], [3655, 3663], [3674, 3712], [3717, 3718],
- [3723, 3724], [3726, 3731], [3752, 3753], [3764, 3772], [3774, 3775], [3783, 3791],
- [3802, 3803], [3806, 3839], [3841, 3871], [3892, 3903], [3949, 3975], [3980, 4095],
- [4139, 4158], [4170, 4175], [4182, 4185], [4190, 4192], [4194, 4196], [4199, 4205],
- [4209, 4212], [4226, 4237], [4250, 4255], [4294, 4303], [4349, 4351], [4686, 4687],
- [4702, 4703], [4750, 4751], [4790, 4791], [4806, 4807], [4886, 4887], [4955, 4968],
- [4989, 4991], [5008, 5023], [5109, 5120], [5741, 5742], [5787, 5791], [5867, 5869],
- [5873, 5887], [5906, 5919], [5938, 5951], [5970, 5983], [6001, 6015], [6068, 6102],
- [6104, 6107], [6109, 6111], [6122, 6127], [6138, 6159], [6170, 6175], [6264, 6271],
- [6315, 6319], [6390, 6399], [6429, 6469], [6510, 6511], [6517, 6527], [6572, 6592],
- [6600, 6607], [6619, 6655], [6679, 6687], [6741, 6783], [6794, 6799], [6810, 6822],
- [6824, 6916], [6964, 6980], [6988, 6991], [7002, 7042], [7073, 7085], [7098, 7167],
- [7204, 7231], [7242, 7244], [7294, 7400], [7410, 7423], [7616, 7679], [7958, 7959],
- [7966, 7967], [8006, 8007], [8014, 8015], [8062, 8063], [8127, 8129], [8141, 8143],
- [8148, 8149], [8156, 8159], [8173, 8177], [8189, 8303], [8306, 8307], [8314, 8318],
- [8330, 8335], [8341, 8449], [8451, 8454], [8456, 8457], [8470, 8472], [8478, 8483],
- [8506, 8507], [8512, 8516], [8522, 8525], [8586, 9311], [9372, 9449], [9472, 10101],
- [10132, 11263], [11493, 11498], [11503, 11516], [11518, 11519], [11558, 11567],
- [11622, 11630], [11632, 11647], [11671, 11679], [11743, 11822], [11824, 12292],
- [12296, 12320], [12330, 12336], [12342, 12343], [12349, 12352], [12439, 12444],
- [12544, 12548], [12590, 12592], [12687, 12689], [12694, 12703], [12728, 12783],
- [12800, 12831], [12842, 12880], [12896, 12927], [12938, 12976], [12992, 13311],
- [19894, 19967], [40908, 40959], [42125, 42191], [42238, 42239], [42509, 42511],
- [42540, 42559], [42592, 42593], [42607, 42622], [42648, 42655], [42736, 42774],
- [42784, 42785], [42889, 42890], [42893, 43002], [43043, 43055], [43062, 43071],
- [43124, 43137], [43188, 43215], [43226, 43249], [43256, 43258], [43260, 43263],
- [43302, 43311], [43335, 43359], [43389, 43395], [43443, 43470], [43482, 43519],
- [43561, 43583], [43596, 43599], [43610, 43615], [43639, 43641], [43643, 43647],
- [43698, 43700], [43703, 43704], [43710, 43711], [43715, 43738], [43742, 43967],
- [44003, 44015], [44026, 44031], [55204, 55215], [55239, 55242], [55292, 55295],
- [57344, 63743], [64046, 64047], [64110, 64111], [64218, 64255], [64263, 64274],
- [64280, 64284], [64434, 64466], [64830, 64847], [64912, 64913], [64968, 65007],
- [65020, 65135], [65277, 65295], [65306, 65312], [65339, 65344], [65371, 65381],
- [65471, 65473], [65480, 65481], [65488, 65489], [65496, 65497]];
- for (i = 0; i < ranges.length; i++) {
- start = ranges[i][0];
- end = ranges[i][1];
- for (j = start; j <= end; j++) {
- result[j] = true;
- }
- }
- return result;
-})();
-
function splitQuery(query) {
- var result = [];
- var start = -1;
- for (var i = 0; i < query.length; i++) {
- if (splitChars[query.charCodeAt(i)]) {
- if (start !== -1) {
- result.push(query.slice(start, i));
- start = -1;
- }
- } else if (start === -1) {
- start = i;
- }
- }
- if (start !== -1) {
- result.push(query.slice(start));
- }
- return result;
+ return query.split(/\s+/);
}
-
-
/**
* Search Module
*/
@@ -417,7 +323,7 @@ var Search = {
*/
query : function(query) {
var i;
- var stopwords = ["a","and","are","as","at","be","but","by","for","if","in","into","is","it","near","no","not","of","on","or","such","that","the","their","then","there","these","they","this","to","was","will","with"];
+ var stopwords = ["a", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "near", "no", "not", "of", "on", "or", "such", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with"];
// stem the searchterms and add them to the correct list
var stemmer = new Stemmer();
diff --git a/libmongoc/current b/libmongoc/current
index b544c09974388c4c3bd4c690fb6faa6086b855c7..8cb07451dbb1571618c2ee349a289bf478ebe6c1 120000
--- a/libmongoc/current
+++ b/libmongoc/current
@@ -1 +1 @@
-1.23.3
\ No newline at end of file
+1.23.4
\ No newline at end of file
diff --git a/libmongoc/index.html b/libmongoc/index.html
index 44f8dc02bb106fbdd7a90374eb7885eaa7843533..7eb505037bde90a8cb90618902e2c73b562db0c1 100644
--- a/libmongoc/index.html
+++ b/libmongoc/index.html
@@ -1,9 +1,9 @@
-
+
-
+
@@ -21,16 +21,15 @@
delighted.survey();
- libmongoc Releases — MongoDB C Driver 1.23.3
+ libmongoc Releases — MongoDB C Driver 1.23.4
-
-
+
@@ -50,7 +49,7 @@
previous |
- MongoDB C Driver 1.23.3 »
+ MongoDB C Driver 1.23.4 »
@@ -59,11 +58,12 @@
diff --git a/objects.inv b/objects.inv
index cfb8bc3cd31c6d7d752a9cf6c31375174f48a98b..353585b760e498611cdb89cfffcbc8658214e1f0 100644
Binary files a/objects.inv and b/objects.inv differ
diff --git a/search.html b/search.html
index 8895d47a24804c30564cbdba6926f72efc0d5657..bd5a2a1e155fe4d11fcd034b6d2efdc520f15881 100644
--- a/search.html
+++ b/search.html
@@ -1,7 +1,7 @@
-
+
@@ -20,16 +20,15 @@
delighted.survey();
- Search — MongoDB C Driver 1.23.3
+ Search — MongoDB C Driver 1.23.4
-
-
+