File: mongoc_change_stream_next.rst

package info (click to toggle)
mongo-c-driver 1.17.6-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 37,256 kB
  • sloc: ansic: 152,613; javascript: 7,954; python: 3,259; sh: 138; makefile: 29; xml: 10
file content (41 lines) | stat: -rw-r--r-- 1,159 bytes parent folder | download | duplicates (4)
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
:man_page: mongoc_change_stream_next

mongoc_change_stream_next()
===========================

Synopsis
--------

.. code-block:: c

  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``.

Parameters
----------

* ``stream``: A :symbol:`mongoc_change_stream_t`.
* ``bson``: The location for the resulting document.

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 :symbol:`mongoc_change_stream_error_document`
function.

Lifecycle
---------

Similar to :symbol:`mongoc_cursor_next` the lifetime of ``bson`` is until the
next call to :symbol:`mongoc_change_stream_next`, so it needs to be copied to
extend the lifetime.