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

Managed_uuid.hpp

1
2//
3// © 2022 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#ifndef CPPREALM_MANAGED_UUID_HPP
20CPPrealM_MANAGED_UUID_HPP を定義する
21
22#include <cpprealm/macros.hpp>
23#include <cpprealm/types.hpp>
24
25名前空間邦土 {
26 クラスrbool 。
27 }
28名前空間邦土 {
29
30 template<>
31 構造体 Managed <realm:: uuid > : Managed_base {
32 使用 value_type = realm::uuid;
33 使用 Managed < Realm::uuid >::maned_base::operator=====================================================================================
34
35 [[nodiscard]] realm::uuid detach() const {
36 return m_obj->template get=realm::<realm::internal::bridge::uuid> internal::bridge::uuid>(m_key).operator::realm::uuid()。
37 }
38
39 [[nodiscard]] Realm ::uuid演算子 *() const {
40 return detach();
41 }
42
43 [[nodiscard]]演算子Realm ::uuid () const {
44 return detach();
45 }
46
47 //Mask: - 比較演算子
48 rbool Operator==( const Realm ::uuid &rhs) constは例外をスローします。
49 rbool演算子!=( const Realm ::uuid & rhs )は 以外と一致しません。
50
51 private :
52 マネージド()=デフォルト
53 マネージドconst administrators =削除
54 マネージドマネージド& )= delete
55 Managed & 演算子=( constマネージド&) = delete
56 Managed & 演算子=(マネージド&と) = delete
57 テンプレート< typename , typename >
58 友人 構造体 マネージド
59 };
60
61 template<>
62 構造体 Managed <std::optional[realm::uuid]<realm::uuid> : Managed_base {
63 value_type = std::optional{realm::uuid><realm::uuid> を使用します。
64 使用 Managed <realm::uuid><std::optional=realm::uuid>::managed_base::operator========================================
65
66[[nodiscard]] std::optional{realm::uuid><realm::uuid> describe() Const {
67 auto v = m_obj->template get_optional{realm::<realm::internal::bridge::uuid> internal::bridge::uuid>(m_key)
68v ){
69 return v.value().operator ::realm::uuid()。
70 } else {
71 std::nullopt を返す
72 }
73 }
74
75[[nodiscard]] std::optional{realm::uuid><realm::uuid> 演算子 *() const {{
76 return detach();
77 }
78
79[[nodiscard]] 演算子 std::optional{realm::uuid>()<realm::uuid> const {
80 return detach();
81 }
82
83 //Mask: - 比較演算子
84 rbool Operator==( const std::optional<realm::uuid> = realm::uuid> =====================================================================
85 rbool演算子!=( const <realm::uuid>ください
86
87 private :
88 マネージド()=デフォルト
89 マネージドconst administrators =削除
90 マネージドマネージド& )= delete
91 Managed & 演算子=( constマネージド&) = delete
92 Managed & 演算子=(マネージド&と) = delete
93 テンプレート< typename , typename >
94 友人 構造体 マネージド
95 };
96
97} // namespace realm
98
99
100#endif//CPREALM_MANAGED_UUID_HPP
定義: rbool.hpp:36
定義: caches.hpp:286
Definition: obj.hpp:62
定義: types.hpp:35