64 core& operator=(
core const&) = delete;
530 template <typename T>
532 static_assert(detail::is_alike<T, char>::value,
"append is disabled for non-char pointer types");
727 std::unique_ptr<impl> _impl;
Provides bsoncxx::v_noabi::array::value.
Provides bsoncxx::v_noabi::array::view.
#define BSONCXX_ABI_EXPORT_CDECL(...)
Equivalent to BSONCXX_ABI_EXPORT with BSONCXX_ABI_CDECL.
Definition export.hpp:52
The bsoncxx v_noabi macro guard postlude header.
The bsoncxx v_noabi macro guard prelude header.
core(bool is_array)
Constructs an empty BSON datum.
A read-only BSON array that owns its underlying buffer.
Definition value.hpp:37
A read-only, non-owning view of a BSON document.
Definition view.hpp:36
core & append(types::b_double const &value)
Appends a BSON double.
core & append(bool value)
Appends a native boolean as a BSON boolean.
void clear()
Deletes the contents of the underlying BSON datum. After calling clear(), the state of this class wil...
core & append(double value)
Appends a native double as a BSON double.
core & close_binary()
Closes the current sub-binary within this BSON datum.
bsoncxx::v_noabi::array::view view_array() const
Gets a view over the array.
bsoncxx::v_noabi::array::value extract_array()
Transfers ownership of the underlying document to the caller.
core & append(decimal128 value)
Appends a decimal128 object as a BSON Decimal128.
core & append(std::int64_t value)
Appends a native int64_t as a BSON 64-bit signed integer.
core & append(bsoncxx::v_noabi::document::view view)
Appends the given document view.
core & append(bsoncxx::v_noabi::array::view view)
Appends the given array view.
core & key_owned(std::string key)
Appends a key passed as an STL string. Transfers ownership of the key to this class.
core(bool is_array)
Constructs an empty BSON datum.
core & key_view(stdx::string_view key)
Appends a key passed as a non-owning stdx::string_view.
core & open_document()
Opens a sub-document within this BSON datum.
core & close_array()
Closes the current sub-array within this BSON datum.
core & open_binary()=delete
A sub-binary must be opened by invoking bsoncxx::v_noabi::builder::basic::sub_binary::allocate()
bsoncxx::v_noabi::document::value extract_document()
Transfers ownership of the underlying document to the caller.
core & concatenate(bsoncxx::v_noabi::document::view const &view)
Appends the keys from a BSON document into this BSON datum.
core & append(std::int32_t value)
Appends a native int32_t as a BSON 32-bit signed integer.
core & open_array()
Opens a sub-array within this BSON datum.
core & append(oid const &value)
Appends an oid as a BSON ObjectId.
core & close_document()
Closes the current sub-document within this BSON datum.
bsoncxx::v_noabi::document::view view_document() const
Gets a view over the document.
A JSON-like builder for creating documents.
Definition list.hpp:149
Represents a MongoDB BSON Decimal128.
Definition decimal128.hpp:40
A read-only BSON document that owns its underlying buffer.
Definition value.hpp:39
A read-only, non-owning view of a BSON document.
Definition view.hpp:35
Represents a MongoDB BSON ObjectId.
Definition oid.hpp:36
Declares bsoncxx::v_noabi::builder::core.
Provides bsoncxx::v_noabi::document::value.
Provides bsoncxx::v_noabi::document::view.
Declares entities used to build BSON documents.
Declares C++17 standard library polyfills.
Declares entities representing BSON value types.
Declares entities whose ABI stability is NOT guaranteed.
binary_sub_type
An enumeration of each BSON binary sub type.
Definition types.hpp:72
The top-level namespace within which all bsoncxx library entities are declared.
A BSON UTF-8 encoded string value.
Definition types.hpp:136
Provides entities used to represent BSON types.
Provides std::string_view-related polyfills for library API usage.