Ditto 4.13.1
 
Loading...
Searching...
No Matches
MutableDocument.hpp
1#ifndef DITTO_MUTABLE_DOCUMENT_H
2#define DITTO_MUTABLE_DOCUMENT_H
3
4#include "DocumentId.hpp"
5#include "MutableDocumentPath.hpp"
6#include "UpdateResult.hpp"
7
8#include <memory>
9#include <string>
10#include <vector>
11
12namespace ditto {
13
32class DITTO_DEPRECATED_BECAUSE(
33 "Use DQL (Ditto Query Language) instead. For more information see: "
34 "https://ditto.com/link/legacy-to-dql-guide") MutableDocument {
35 DITTO_DISABLE_DEPRECATED_WARNINGS("The legacy query API is deprecated")
36
37 friend class DocumentOperator;
38 friend class QueryOperator;
39
40 const CDocument_t *document;
41 DocumentId id;
42 std::vector<std::unique_ptr<UpdateResult>> results;
43
44 MutableDocument(const CDocument_t *document, DocumentId id);
45
46public:
47 MutableDocument(const MutableDocument &other) = delete;
48 MutableDocument(MutableDocument &&other) = default;
49
58 MutableDocumentPath operator[](const std::string &path);
59
60 // Registers & Counters & so on
61
62 DITTO_REENABLE_WARNINGS
63};
64} // namespace ditto
65
66#endif
MutableDocumentPath operator[](const std::string &path)
Used to specify a path to a key in the document that you can subscript further to access a nested key...
Provides an interface to specify a path to a key in a document that you can then call various update ...
Definition MutableDocumentPath.hpp:37
Namespace for the Ditto C++ SDK types and functions.
Definition AbstractDocumentPath.hpp:19
An identifier for a Document.
Definition DocumentId.hpp:23