Scroll to navigation

MONGOC_MATCHER_T(3) MongoDB C Driver MONGOC_MATCHER_T(3)

NAME

mongoc_matcher_t - 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.INDENT 0.0

#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;
}



AUTHOR

MongoDB, Inc

COPYRIGHT

2017-present, MongoDB, Inc
February 23, 2019 1.14.0