Realm C++ SDK Versão C++ v2.2.0

notifications.hpp

1
2//
3// Autores 2022 Realm Inc.
4//
5// Licenciado sob a Licença Apache, Versão 2.0 (a "Licença");
6// você não pode usar este arquivo, exceto em conformidade com a Licença.
7// Você pode obter uma cópia da Licença em
8//
9// http://www.apache.org/license/LICENSE-2.0
10//
11// A menos que exigido pela lei aplicável ou acordado por escrito, o software
12// distribuído sob a Licença é distribuído "Como está",
13// sem garantias ou condições de qualquer tipo, Express ou implícitas.
14// Consulte a Licença para obter as permissões específicas de domínio do idioma e
15// limitações da Licença.
16//
18
19notificações #ifndef_hpp
20#defina notificações_hpp
21
22#include <cprealm/thread_safe_reference.hpp>
23#include <cprealm/internal/bridge/Dictionary.hpp>
24#include <cprealm/internal/bridge/list.hpp>
25#include <cprealm/internal/bridge/set.hpp>
26
27#include <any>
28#include <future>
29#include <utility>
30
31namespace Realm {
32modelo <typename T>
33estrutura, estrutura ObjectChange;
34
38estrutura, estrutura notification_token {
39 notification_token(const notification_token &nt) noexceto = excluir;
40 notification_token &operator=(const notification_token &) = excluir;
42 m_token = std::move(OTHER.m_token);
43 m_Dictionary = std::move(OTHER.m_Dictionary);
44 m_list = std::move(outros.m_list);
45 m_set = std::move(OTHER.m_set);
46 m_results = std::move(OTHER.m_results);
47 m_realm = std::move(OTHER.m_realm);
48 };
49 notificação_token &operator=(notificação_token &&outros) {
50 m_token = std::move(OTHER.m_token);
51 m_Dictionary = std::move(OTHER.m_Dictionary);
52 m_list = std::move(OTHER.m_list);
53 m_set = std::move(OTHER.m_set);
54 m_results = std::move(OTHER.m_results);
55 m_realm = std::move(OTHER.m_realm);
56 devolva *isto;
57 };
58 notificação_token() = padrão;
59 ~notification_token() = default;
60
62 : m_token(std::move(token)) {}
63 anular o registro de {
64 m_token.unregister();
65 }
66
67 initial ::bridge::notification_token m_token;
68 std::shared_ptr<internal::bridge::dictionary> m_Dictionary;
69 std::shared_ptr<internal::bridge::list> m_list;
70 std::shared_ptr<internal::bridge::set> m_set;
71 std::shared_ptr<internal::bridge::results> m_results;
73};
74
75//Marca: PropertyChange
79modelo <typename T>
80estrutura, estrutura PropertyAlterar {
84 std:: nome da string ;
85
97 std::optional<typename decltype(T::schema)::variant_t> old_value;
98
103 std::optional<typename decltype(T::schema)::variant_t> new_value;
104};
105
106} // namespace realm
107
108#endif /* notificações_hpp */
Definição: notificações.hpp:33
Definição: notificações.hpp:80
std::optional< typename decltype(T::schema)::variant_t >old_value
Definição: notificações.hpp:97
std::optional< typename decltype(T::schema)::variant_t > new_value
Definição: notificações.hpp:103
std::string name
Definição: notificações.hpp:84
Definição: realm.hpp:67
Definição: notificações.hpp:38