21 #include <bsoncxx/document/element.hpp>
22 #include <bsoncxx/stdx/string_view.hpp>
24 #include <bsoncxx/config/prelude.hpp>
27 BSONCXX_INLINE_NAMESPACE_BEGIN
53 view(
const std::uint8_t* data, std::size_t length);
102 element operator[](stdx::string_view key)
const;
109 const std::uint8_t* data()
const;
119 std::size_t length()
const;
136 friend BSONCXX_API
bool BSONCXX_CALL operator==(
view,
view);
137 friend BSONCXX_API
bool BSONCXX_CALL operator!=(
view,
view);
143 const std::uint8_t* _data;
161 using iterator_category = std::forward_iterator_tag;
162 using difference_type = std::ptrdiff_t;
191 BSONCXX_INLINE_NAMESPACE_END
194 #include <bsoncxx/config/postlude.hpp>