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

set.hpp

1
2//
3// Autores 2024 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
19#ifndef CPPREALM_BRIDGE_SET_HPP
20#define CPPREALM_BRIDGE_SET_HPP
21
22#include <cstdlib>
23#include <memory>
24#include <set>
25#include <string>
26#include <cprealm/internal/bridge/utils.hpp>
27
28namespace Realm {
29 namespace object_store {
30 conjunto de classes ;
31 }
32}
33
34namespace realm::internal::bridge {
35 domínio estruturado ;
36 estrutura obj;
37 estruturado obj_key;
38 estrutura mista;
39 binário estruturado ;
40 struct uuid;
41 estrutura object_id;
42 struct col_key;
43 carimbo de data/hora da estrutura ;
44 tabela estrutura ;
45 change notification_token;
46 collection_change_callback de estrutura ;
47
48 estrutura, estrutura definir {
49 definir();
50 definir(conjunto const e outros );
51 set& operator=(const set& other) ;
52 definir(definir&& outro);
53 set& operator=(set&& other);
54 ~set();
55 definir(const object_store::Set&); //NOLINT(google-explicit-constructor)
56 operador object_store::Set() const; //NOLINT(google-explicit-constructor)
57 set(const realm& realm, const obj& obj, const col_key&);
58
59 get_any misto (const size_t& i) const;
60 obj get_obj(const size_t& i) const;
61
62 [[nodiscard]] size_t size() const;
63 null remove_all ();
64
65 tabela get_table() const;
66
67 std::pair<size_t, bool> insert(const std::string&);
68 std::pair<size_t, bool> insert(const int64_t &);
69 std::pair<size_t, bool> insert(const double &);
70 std::pair<size_t, bool> insert(const bool &);
71 std::pair<size_t, bool> insert(const binary &);
72 std::pair<size_t, bool> insert(const uuid &);
73 std::pair<size_t, bool> insert(const object_id &);
74 std::pair<size_t, bool> insert(const mixed &);
75 std::pair<size_t, bool> insert(const obj_key &);
76 std::pair<size_t, bool> insert(const timestamp &);
77
78 removedor nulo (const int64_t &);
79 removedor nulo ( bool const &);
80 remover null (const double &);
81 removedor nulo ( std const ::string &);
82 void remove(const uuid &);
83 removedor nulo (const object_id &);
84 remover nulo (const misto &);
85 remover nulo (carimbo de data/ horaconst &);
86 removedor nulo (const binário&);
87 removedor nulo (const obj_key&);
88
89 size_t find(const int64_t &);
90 size_t find(bool const &);
91 size_t find(const double &);
92 size_t find(const std::string &);
93 size_t find(const uuid &);
94 size_t find(const object_id &);
95 size_t find(const mixed &);
96 size_t find(const timestamp &);
97 size_t find( binário constante& );
98 size_t find(const obj_key&);
99 notification_token add_notification_callback(std::shared_ptr<collection_change_callback>);
100 privado:
101 const object_store::Set* get_set() const;
102 object_store::Set* get_set();
103#ifdef CPPREALM_HVE_GENERATED_BRIDGE_TYPes
104 armazenamento::Set m_set[1];
105#else
106 std::shared_ptr<object_store::Set> m_set;
107#endif
108 };
109}
110
111#endif //CPPrealm_BRIDGE_SET_HPP
Definição: binary.hpp:30
Definição: col_key.hpp:28
Definição: misto.hpp:69
Definição: obj_key.hpp:33
Definição: obj.hpp:123
Definição: object_id.hpp:31
Definição: realm.hpp:67
Definição: set.hpp:48
Definição: table.hpp:40
Definição: timestamp.hpp:30
Definição: uuid.hpp:32