userver: userver/formats/bson/document.hpp Source File
⚠️ This is the documentation for an old userver version. Click here to switch to the latest version.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
document.hpp
Go to the documentation of this file.
1#pragma once
2
3/// @file userver/formats/bson/document.hpp
4/// @brief @copybrief formats::bson::Document
5
6#include <userver/formats/bson/types.hpp>
7#include <userver/formats/bson/value.hpp>
8
9USERVER_NAMESPACE_BEGIN
10
11namespace formats::bson {
12
13/// BSON document
14class Document : public Value {
15 public:
16 /// @brief Constructs an empty document
17 /// Equivalent to `MakeDoc()`
19
20 /// @brief Unwraps document from Value
21 /// @throws TypeMismatchException if value is not a document
22 /* implicit */ Document(const Value& value);
23
24 /// @cond
25 /// Constructs from a native type, internal use only
26 explicit Document(impl::BsonHolder);
27
28 /// Native type access, internal use only
29 using Value::GetBson;
30 /// @endcond
31};
32
33} // namespace formats::bson
34
35USERVER_NAMESPACE_END