1#ifndef _DITTO_ABSTRACT_DOCUMENT_PATH_
2#define _DITTO_ABSTRACT_DOCUMENT_PATH_
5#include "UpdateResult.hpp"
8typedef struct CDocument CDocument_t;
23 CDocument_t
const *document;
39 std::string initial_path);
79 PathAccessorType path_type)
const;
84 PathAccessorType path_type)
const;
88 get_mut_object_or_default(json_callback json_cb,
89 PathAccessorType path_type)
const;
Provides an interface to specify a path to a key in a document that you can then call various update ...
Definition AbstractDocumentPath.hpp:21
int get_int_value() const
Returns the value at the previously specified key in the document as an int. If the key was invalid a...
Definition AbstractDocumentPath.cpp:140
std::shared_ptr< T > get_object_or_default(json_callback json_cb, PathAccessorType path_type) const
Helper function to retrieve crdt objects.
Definition AbstractDocumentPath.cpp:110
double get_double_value() const
Returns the value at the previously specified key in the document as a double. If the key was invalid...
Definition AbstractDocumentPath.cpp:145
AbstractDocumentPath(CDocument_t const *document, DocumentId id, std::string initial_path)
Constructs a new initial AbstractDocumentPath for a document.
Definition AbstractDocumentPath.cpp:33
float get_float_value() const
Returns the value at the previously specified key in the document as a float. If the key was invalid ...
Definition AbstractDocumentPath.cpp:150
AbstractDocumentPath operator[](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 AbstractDocumentPath.cpp:53
T get_primitive_or_default(T default_value, json_callback json_cb, PathAccessorType path_type) const
Get the primitive stored at a given path or the correspondign default value.
Definition AbstractDocumentPath.cpp:84
std::string get_string_value() const
Returns the value at the previously specified key in the document as a std::string....
Definition AbstractDocumentPath.cpp:135
bool get_bool_value() const
Returns the value at the previously specified key in the document as a bool. If the key was invalid a...
Definition AbstractDocumentPath.cpp:155
nlohmann::json get_json() const
Returns the value at the previously specified key in the document as a nlohmann::json object....
Definition AbstractDocumentPath.cpp:160
basic_json<> json
default JSON class
Definition json.hpp:2933
An identifier for a Document.
Definition DocumentId.hpp:21