userver: userver/formats/bson/document.hpp Source File
Loading...
Searching...
No Matches
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