19#ifndef CPPREALM_BRIDGE_DICTIONARY_HPP
20#define CPPREALM_BRIDGE_DICTIONARY_HPP
26#include <cprealm/internal/bridge/utils.hpp>
28namespace realm::object_store {
34 usando CoreDictionary = Dicionário;
42 std::vector<std::string> exclusões;
45 inserções std::vector<std::string>;
48 modificações std::vector<std::string>;
50 bool collection_root_was_deleted =
false;
58 std::vector<std::string>&& m,
59 std::vector<std::string>&& d,
61 : inserts(std::move(i)),
62 modificações(std::move(m)),
63 exclusões(std::move(d)),
64 collection_root_was_deleted(c) {}
66 inserções std::vector<std::string>;
67 modificações std::vector<std::string>;
68 std::vector<std::string> exclusões;
72 bool collection_root_was_deleted =
false;
74 [[nodiscard]]
bool empty()
const noexceto {
75 return deleteries.empty() && inserts.empty() && modified.empty() &&
76 !collection_root_was_deleted;
82 bool ignore_changes_in_initial_notification;
85 bool ignore_changes_in_initial_notification)
87 , ignore_changes_in_initial_notification(ignore_changes_in_initial_notification)
92namespace realm::internal::bridge {
93 usando Dicionário = object_store::Dictionary;
94 usando CoreDictionary = CoreDictionary;
98 carimbo de data/hora
da estrutura ;
102 change notification_token;
103 collection_change_callback de
estrutura ;
115 operador CoreDictionary()
const;
116 inserção
vazia ( std
const ::string& chave,
const misto& valor);
117 inserção
vazia (
const std::string& chave,
const std::string& valor);
118 obj create_and_insert_linked_object(
const std::string e chave);
120 get(
const std::string& key)
const;
121 vazio apaga(
const std::string& chave);
122 obj get_object(
const std::string& chave);
123 std::pair<mixed, mixed> get_pair(
size_t ndx)
const;
124 size_t find_any_key(
const std::string& value)
const noexceto;
128 const CoreDictionary* get_Dictionary()
const;
129 CoreDictionary* get_Dictionary();
130#ifdef CPPREALM_HVE_GENERATED_BRIDGE_TYPes
131 armazenamento::CoreDictionary m_Dictionary[1];
133 std::shared_ptr<CoreDictionary> m_Dictionary;
146 operador Dicionário()
const;
147 inserção
vazia ( std
const ::string& chave,
const misto& valor);
148 inserção
vazia (
const std::string &chave,
const std::string &valor);
149 [[nodiscard]]
size_t size()
const;
151 removedor nulo (
const std::string&);
152 std::pair<std::string, mixed> get_pair(
size_t);
153 [[nodiscard]]
size_t get_key_index(
const std::string&);
155 [[nodiscard]]
size_t find(
const std::string&);
156 obj insert_embedded(
const std::string&);
157 notification_token add_notification_callback(std::shared_ptr<collection_change_callback>&& cb);
158 notification_token add_key_based_notification_callback(std::shared_ptr<dictionary_callback_wrapper>&& cb);
160 Dicionário
const * get_Dictionary()
const;
161 Dicionário* get_Dictionary();
162 amigo Dicionário in-
line * get_Dictionary(
dictionary& lst);
163 amigo in-line dicionário const * get_Dictionary(
dicionárioconst & lst);
166#ifdef CPPREALM_HVE_GENERATED_BRIDGE_TYPes
167 armazenamento::Dictionary m_Dictionary[1];
169 std::shared_ptr<Dictionary> m_Dictionary;
174 [[nodiscard]] T get(
dictionary&,
const std::string&);
176 [[nodiscard]] std::string get(
dictionary&,
const std::string&);
190 [[nodiscard]] int64_t get(
dictionary&,
const std::string&);
192 [[nodiscard]]
double get(
dictionary&,
const std::string&);
Definição: dictionary.hpp:80
Definição: dictionary.hpp:35
Definição: dictionary.hpp:53
Definição: dictionary.hpp:106
Definição: dictionary.hpp:138
Definição: obj_key.hpp:33
Definição: object_id.hpp:31
Definição: timestamp.hpp:30