20 #include <bsoncxx/document/view.hpp>
21 #include <bsoncxx/stdx/optional.hpp>
23 #include <bsoncxx/config/prelude.hpp>
26 BSONCXX_INLINE_NAMESPACE_BEGIN
44 BSONCXX_API stdx::optional<document::view> BSONCXX_CALL
validate(
const std::uint8_t* data,
67 BSONCXX_API stdx::optional<document::view> BSONCXX_CALL
70 const validator& validator,
71 std::size_t* invalid_offset =
nullptr);
94 void check_utf8(
bool check_utf8);
101 bool check_utf8()
const;
111 void check_utf8_allow_null(
bool check_utf8_allow_null);
120 bool check_utf8_allow_null()
const;
129 void check_dollar_keys(
bool check_dollar_keys);
137 bool check_dollar_keys()
const;
146 void check_dot_keys(
bool check_dot_keys);
154 bool check_dot_keys()
const;
157 struct BSONCXX_PRIVATE impl;
158 std::unique_ptr<impl> _impl;
161 BSONCXX_INLINE_NAMESPACE_END
164 #include <bsoncxx/config/postlude.hpp>