Realm C++ SDKバージョン v 2.2.0

dictionary.hpp

1
2//
3// © 2024 Realm Inc.
4//
5// Apache ライセンス、バージョン 2.0(「ライセンス」)に基づいてライセンスされている
6// ライセンス に準拠している場合を除き、このファイルを使用することはできません。
7// ライセンスのコピーは次で取得できます:
8//
9// http://www.apache.org/licenses/LICENSE-2.0
10//
11// 該当するルールによって要求されたり、書込み (write) で同意された場合を除き、ソフトウェア
12ライセンスに基づいて配布される // は "AS IS" CRUD で配布されるため、
13// 任意の種類の 保証 または 条件なし(式またはExpressのいずれか)。
14// 特定の言語を使用する権限については、「ライセンス」を参照してください
15ライセンスに基づく // の制限。
16//
18
19#ifndref CPREALM_TRIDGE_DICTIONATIONY_HPP
20CPREALM_CRIDGE_DICTIONATIONY_HPP を定義する
21
22#include <function"><functional>
23#include <memory>
24#include <string>
25#include <vector"<vector>
26#include <cpprealm/ internal/bridge/uts.hpp>
27
28名前空間Realm::object_store {
29 クラスの辞書
30 }
31
32名前空間邦土 {
33 クラスの辞書
34 CoreDictionary =辞書を使用している
37 logical_change_set (辞書_change_set &=) =デフォルト
38 辞書_change_set & 演算子=( constDictionary_change_set &)=( constDictionary_change_set &)=(
39 辞書_change_set & 演算子=(辞書_change_set &+) =デフォルト
40
41 // _ old_ 辞書から削除されたキー
42 std::vector<std::string> の削除
43
44 // 新しい挿入である _new_ 辞書内のキー
45 std::vector<std::string> 挿入
46
47 // 変更されたオブジェクトや値のキー
48std::vector[std::string]><std::string> の変更。
49
50 ブールcollection_ root_was_deleted = false
51 };
52
54 辞書_コレクション_変更() =デフォルト
55
56
57 logical_collection_change (std::vector[std::string]>================================================================<std::string>
58 std::vector<std::string>=============================================
59std::vector[std::string]>=d=d、<std::string>
60 ブール値c)
61 : 挿入(std::move(i))、
62変更(std::move(m)),
63削除(std::move(d)),
64 collection_ root_was_deleted(c) {}
65
66 std::vector<std::string> 挿入
67std::vector[std::string]><std::string> の変更。
68 std::vector<std::string> の削除
69 // このフラグは、こののソースである基礎となるオブジェクトが
70 // コレクションが削除されました。 これは、リスト、辞書、セットに適用されます。
71 // これにより、通知機能は削除された空のコレクションの変更を報告できるようになります。
72 ブールcollection_ root_was_deleted = false
73
74[[ nodiscard ]] bool empty() は { の例外をスローします 。
75 return deletes. empty() &string. empty() &ampty() & &
76 .collection_ root_was_deleted
77 }
78 };
79
80 構造体 辞書_コールバック_ラッパー {
81 std::function<void(dictionary_collection_change)> handler;
82 ブール値は_changes_in_initial_notificationを無視します。
83
84 辞書_コールバック_ラッパー (std::function= null ( Dictionary_collection_change )> ハンドラー、
85 ブール値は_changes_in_initial_notificationを無視します)
86 : handler(handler)
87 、ignore_changes_in_initial_notification(ignore_changes_in_initial_notification)
88 {}
89 };
90 }
91
92名前空間Realm:: internal::bridge {
93 辞書 = object_store::Dictionaryを使用する
94 CoreDictionary = CoreDictionaryを使用している場合
95
96 混合構造体
97 構造体バイナリ。
98 構造体タイムスタンプ。
99 structobj_key
100 struct uuid
101 struct object_id。
102 structnotification_token
103 struct collection_change_shellback
104 構造体オブジェクト。
105
106 構造体 Core_Dictionary {
107 Core_Dictionary ()
108 core_Dictionaryconstcore_Dictionaryその他
109 Core_Dictionary &operator=( constcore_Dictionaryその他)
110 Core_Dictionarycore_Dictionary &その他)
111 core_条件と演算子=( core_Dictionary &その他)
112 ~core_Dictionary ()。
113
114 Core_Dictionaryconst CoreDictionary+v) //NOLINT(google-explit-structor)
115 演算子CoreDictionary() const//NOLINT(google-explit-structor)
116 無効挿入( const std::string+ キー、 const混合型と 値)。
117 無効挿入( const std::string+ キー、 const std::string+ 値)。
118 obj create_and_insert_linked_object( const std::string( ))。
119 obj create_and_insert_linked_object( const std:string+ key、c onst internal::bridge:: ixed & pk: )
120 混合get( const std:string+key) const
121 無効化( const std::string( キー))。
122 obj get_object( const std::string( ))。
123 std::primed, 混合> get_ pair( size_t ndx) const
124 size_t find_any_key ( const std::string ( 値)
125
126 size_t size() concern
127 private :
128 const CoreDictionary* get_Dictionary() const .
129 CoreDictionary* get_辞書()
130#ifdef CPREALM_HAV_GENERTED_BRIDGE_TypeS
131 storage::CoreDictionary m_Dictionary[ 1 ]
132#else
133std::shared_ptr[CoreDictionary]><CoreDictionary> m_辞書
134#endif
135 };
136
137
138 構造体 dictionary {
139 dictionary();
140 辞書const辞書およびその他) :
141 辞書& 演算子=( const辞書とその他) の場合
142 辞書辞書とその他の辞書)
143 辞書& 演算子=(辞書とその他):
144 ~辞書()
145 辞書const辞書//NOLINT(google-explit-structor)
146 演算子Dictionary() const//NOLINT(google-explit-structor)
147 無効挿入( const std::string+ キー、 const混合型と 値)。
148 無効挿入( const std::string &key、 c onst std::stringとvalue)。
149 [[nodiscard]] size_t size() const
150 disabled delete_all()。
151 無効化削除( const std::string())。
152 std::prim=std::string,混合> get_ pair( size_t )
153 [[nodiscard]] size_t get_key_index( const std::string())
154 無効クリア()。
155 [[nodiscard]] size_t find( const std::string()
156 obj insert_ embedded( const std::string())。
157 notification_token add_notification_backback(std::shared_ptr[collection_change_shellback]>===========================================================================<collection_change_callback>
158 notification_token add_key_base_notification_backback(std::shared_ptr[Dictionary_colback_<dictionary_callback_wrapper> wrapper]>==============================================================
159 private :
160 const辞書* get_Dictionary() Const .
161辞書* get_辞書()。
162 友人 inline辞書 * get_辞書(辞書& Lst)
163 友人 インライン Const 辞書* get_Dictionary( const 辞書 と Lst )。
164 テンプレート< typename T>
165 MongoDB T get ( 辞書 および 書込み std::string())
166#ifdef CPREALM_HAV_GENERTED_BRIDGE_TypeS
167 storage::Dictionary m_Dictionary[ 1 ]
168#else
169std::shared_ptr[Dictionary]><Dictionary> m_辞書
170#endif
171 };
172
173 テンプレート< typename T>
174 [[nodiscard]] T get(辞書&、 const std::string())。
175 テンプレート<>
176 [[ nodiscard ]] std::string get (求めます
177 テンプレート<>
178 [[nodiscard]] uuid get(辞書&、 const std::string+)
179 テンプレート<>
180 [[nodiscard]] object_id get(辞書&、 const std::string+)
181 テンプレート<>
182 [[nodiscard]]タイムスタンプget(辞書&、 const std::string():
183 テンプレート<>
184 [[nodiscard]]バイナリget(辞書&、 const std::string():
185 テンプレート<>
186 [[nodiscard]] obj get(辞書&、 const std::string+)
187 テンプレート<>
188[ [ nodiscard ]] 中 に
189 テンプレート<>
190 [[nodiscard]] は64 _t get(求めは辞書と、 const std::stringと) を使用します。
191 テンプレート<>
192 [[nodiscard]] double get(辞書&、 const std::string+)
193 }
194
195#endif //CPREALM_TRIDGE_DICTIONALY_HPP
定義: logical.happ: 80
定義: logical.happ: 35
定義: logical.happ: 53
定義: binary.happ: 30
定義: logical.happ: 138
定義: compound.hpp:69
Definition: obj_key.hpp:33
Definition: obj.hpp:123
定義: object_id.hpp:31
定義: timestamp.happ: 30