UTF-8

Libbson expects that you are always working with UTF-8 encoded text. Anything else is INVALID API USE.

If you should need to walk through UTF-8 sequences, you can use the various UTF-8 helper functions distributed with Libbson.

Validating a UTF-8 Sequence

To validate the string contained in my_string, use the following. You may pass -1 for the string length if you know the string is NULL-terminated.

If my_string has NULL bytes within the string, you must provide the string length. Use the follwing format. Notice the true at the end indicationg \0 is allowed.

For more information see the API reference for bson_utf8_validate().