70 detail::is_invocable<T, array_context<>>,
71 detail::is_invocable<T, single_context>,
72 detail::is_alike<T, finalize_type>>
74 _core->
append(std::forward<T>(t));
86 template <
typename Func>
88 detail::disjunction<detail::is_invocable<Func, array_context>,
89 detail::is_invocable<Func, single_context>>>
91 detail::invoke(std::forward<Func>(func), *
this);
105 template <
typename T>
107 std::is_same<base, closed_context>,
108 detail::is_alike<T, finalize_type>>
119 key_context<array_context>
operator<<(
const open_document_type) {
121 return wrap_document();
183 key_context<array_context> wrap_document() {
184 return key_context<array_context>(_core);
Provides bsoncxx::v_noabi::array::value.
Declares bsoncxx::v_noabi::builder::stream::array_context.
The bsoncxx macro guard postlude header.
The bsoncxx macro guard prelude header.
A read-only BSON array that owns its underlying buffer. When a array::value goes out of scope,...
Definition value.hpp:36
A low-level interface for constructing BSON documents and arrays.
Definition core.hpp:46
bsoncxx::v_noabi::array::value extract_array()
Transfers ownership of the underlying document to the caller.
core & append(const types::b_double &value)
Appends a BSON double.
core & open_document()
Opens a sub-document within this BSON datum.
core & close_array()
Closes the current sub-array within this BSON datum.
core & concatenate(const bsoncxx::v_noabi::document::view &view)
Appends the keys from a BSON document into this BSON datum.
core & open_array()
Opens a sub-array within this BSON datum.
A stream context which expects any number of values.
Definition array_context.hpp:51
array_context operator<<(concatenate_array array)
<< operator for concatenating another array.
Definition array_context.hpp:133
detail::requires_not_t< array_context &, detail::is_invocable< T, array_context<> >, detail::is_invocable< T, single_context >, detail::is_alike< T, finalize_type > > operator<<(T &&t)
<< operator for accepting a real value and appending it to the core builder.
Definition array_context.hpp:73
base operator<<(const close_array_type)
<< operator for closing a subarray in the core builder.
Definition array_context.hpp:153
array_context(core *core)
Create an array_context given a core builder.
Definition array_context.hpp:59
A streaming interface for constructing a BSON array.
Definition array.hpp:42
bsoncxx::v_noabi::array::view view() const
Definition array.hpp:52
A stream context which appends a single value.
Definition single_context.hpp:38
Provides bsoncxx::v_noabi::builder::stream::closed_context.
Provides concatenators for use with "streaming" BSON builder syntax.
Provides bsoncxx::v_noabi::builder::core.
Declares bsoncxx::v_noabi::builder::stream::key_context.
The top-level namespace within which all bsoncxx library entities are declared.
Declares bsoncxx::v_noabi::builder::stream::single_context.
Provides stream manipulators for use with "streaming" BSON builder syntax.
Container to concatenate an array. Use this with the array stream builder in order to pass an array i...
Definition concatenate.hpp:60
The type of a stream manipulator to close a subarray.
Definition helpers.hpp:71
The type of a stream manipulator to open a subarray.
Definition helpers.hpp:56
Provides <type_traits>-related polyfills for internal use.