34using is_bson_view_compatible =
35 detail::conjunction<std::is_constructible<bsoncxx::v_noabi::types::bson_value::view, T>,
36 detail::negation<detail::disjunction<
37 detail::is_alike<T, bsoncxx::v_noabi::types::bson_value::view>,
38 detail::is_alike<T, bsoncxx::v_noabi::types::bson_value::value>>>>;
102 const bson_value::
view&);
104 const bson_value::
view&);
283 friend ::
bsoncxx::v_noabi::document::element;
285 view(const
std::uint8_t* raw,
std::uint32_t length,
std::uint32_t offset,
std::uint32_t keylen);
286 view(
void* internal_value) noexcept;
288 void _init(
void* internal_value) noexcept;
290 void destroy() noexcept;
329detail::requires_t<bool, detail::is_bson_view_compatible<T>>
336detail::requires_t<bool, detail::is_bson_view_compatible<T>>
343detail::requires_t<bool, detail::is_bson_view_compatible<T>>
350detail::requires_t<bool, detail::is_bson_view_compatible<T>>
365namespace bson_value {
367using ::bsoncxx::v_noabi::types::bson_value::operator==;
368using ::bsoncxx::v_noabi::types::bson_value::operator!=;
381#if defined(BSONCXX_PRIVATE_DOXYGEN_PREPROCESSOR)
385namespace bson_value {
The bsoncxx macro guard postlude header.
The bsoncxx macro guard prelude header.
A variant owning type that represents any BSON type. Owns its underlying buffer. When a bson_value::v...
Definition value.hpp:47
A view-only variant that can contain any BSON type.
Definition view.hpp:54
detail::requires_t< bool, detail::is_bson_view_compatible< T > > operator!=(T &&lhs, const bson_value::view &rhs)
Compares a view with a type representable as a view.
Definition view.hpp:351
const b_dbpointer & get_dbpointer() const
Returns the underlying BSON DBPointer value.
detail::requires_t< bool, detail::is_bson_view_compatible< T > > operator==(T &&lhs, const bson_value::view &rhs)
Compares a view with a type representable as a view.
Definition view.hpp:337
const b_document & get_document() const
Returns the underlying BSON document value.
const b_null & get_null() const
Returns the underlying BSON null value.
const b_symbol & get_symbol() const
Returns the underlying BSON symbol value.
const b_decimal128 & get_decimal128() const
Returns the underlying BSON Decimal128 value.
const b_oid & get_oid() const
Returns the underlying BSON ObjectId value.
const b_binary & get_binary() const
Returns the underlying BSON binary data value.
const b_code & get_code() const
Returns the underlying BSON JavaScript code value.
const b_date & get_date() const
Returns the underlying BSON date value.
const b_bool & get_bool() const
Returns the underlying BSON boolean value.
const b_minkey & get_minkey() const
Returns the underlying BSON min-key value.
detail::requires_t< bool, detail::is_bson_view_compatible< T > > operator==(const bson_value::view &lhs, T &&rhs)
Compares a view with a type representable as a view.
Definition view.hpp:330
const b_double & get_double() const
Returns the underlying BSON double value.
const b_array & get_array() const
Returns the underlying BSON array value.
const b_int32 & get_int32() const
Returns the underlying BSON 32-bit signed integer value.
const b_codewscope & get_codewscope() const
Returns the underlying BSON JavaScript code with scope value.
detail::requires_t< bool, detail::is_bson_view_compatible< T > > operator!=(const bson_value::view &lhs, T &&rhs)
Compares a view with a type representable as a view.
Definition view.hpp:344
const b_maxkey & get_maxkey() const
Returns the underlying BSON max-key value.
const b_undefined & get_undefined() const
Returns the underlying BSON undefined value.
const b_timestamp & get_timestamp() const
Returns the underlying BSON replication timestamp value.
const b_regex & get_regex() const
Returns the underlying BSON regex value.
const b_int64 & get_int64() const
Returns the underlying BSON 64-bit signed integer value.
const b_string & get_string() const
Returns the underlying BSON UTF-8 string value.
Declares bsoncxx::v_noabi::document::element.
#define BSONCXX_ABI_EXPORT_CDECL(...)
Equivalent to BSONCXX_ABI_EXPORT with BSONCXX_ABI_CDECL.
Definition fwd.hpp:177
bool operator==(const v_noabi::types::bson_value::value &lhs, const v_noabi::types::bson_value::value &rhs)
bsoncxx::v_noabi::types::bson_value::operator==(const v_noabi::types::bson_value::value& lhs,...
bool operator!=(const v_noabi::types::bson_value::value &lhs, const v_noabi::types::bson_value::value &rhs)
bsoncxx::v_noabi::types::bson_value::operator!=(const v_noabi::types::bson_value::value& lhs,...
type
An enumeration of each BSON type.
Definition types.hpp:43
The top-level namespace within which all bsoncxx library entities are declared.
The top-level namespace reserved for the C++ standard library.
A BSON array value.
Definition types.hpp:201
A BSON binary data value.
Definition types.hpp:226
A BSON boolean value.
Definition types.hpp:283
A BSON JavaScript code value.
Definition types.hpp:436
A BSON JavaScript code with scope value.
Definition types.hpp:506
A BSON date value.
Definition types.hpp:308
A BSON DBPointer (aka DBRef) value.
Definition types.hpp:417
A BSON Decimal128 value.
Definition types.hpp:609
A BSON document value.
Definition types.hpp:169
A BSON double value.
Definition types.hpp:110
A BSON signed 32-bit integer value.
Definition types.hpp:540
A BSON 64-bit signed integer value.
Definition types.hpp:584
A BSON max-key value.
Definition types.hpp:652
A BSON min-key value.
Definition types.hpp:636
A BSON null value.
Definition types.hpp:365
A BSON ObjectId value.
Definition types.hpp:265
A BSON regex value.
Definition types.hpp:381
A BSON UTF-8 encoded string value.
Definition types.hpp:135
A BSON Symbol value.
Definition types.hpp:472
A BSON replication timestamp value.
Definition types.hpp:565
A BSON undefined value.
Definition types.hpp:249
Provides <type_traits>-related polyfills for internal use.
Declares bsoncxx::v_noabi::types::bson_value::value.
Declares bsoncxx::v_noabi::types::bson_value::view.
Provides entities used to represent BSON types.