Ditto  3.0.4
MutableDocument.hpp
1 #ifndef _DITTO_MUTABLE_DOCUMENT_
2 #define _DITTO_MUTABLE_DOCUMENT_
3 
4 #include "DocumentId.hpp"
5 #include "MutableDocumentPath.hpp"
6 #include "UpdateResult.hpp"
7 
8 #include <memory>
9 #include <string>
10 #include <vector>
11 
12 namespace ditto {
13 
30  friend class DocumentOperator;
31  friend class QueryOperator;
32 
33  const CDocument_t *document;
34  DocumentId id;
35  std::vector<std::unique_ptr<UpdateResult>> results;
36 
37  MutableDocument(const CDocument_t *document, DocumentId id);
38 
39 public:
40  MutableDocument(const MutableDocument &other) = delete;
41  MutableDocument(MutableDocument &&other) = default;
42 
51  MutableDocumentPath operator[](const std::string &path);
52 
53  // Registers & Counters & so on
54 };
55 } // namespace ditto
56 
57 #endif
This is used as part of update operations for documents.
Definition: MutableDocument.hpp:29
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...
Definition: MutableDocument.cpp:11
Provides an interface to specify a path to a key in a document that you can then call various update ...
Definition: MutableDocumentPath.hpp:32
An identifier for a Document.
Definition: DocumentId.hpp:21