19#ifndef CPPREALM_BRIDGE_LIST_HPP
20#define CPPREALM_BRIDGE_LIST_HPP
26#include <cpprealm/internal/bridge/utils.hpp>
32命名空间realm::internal::bridge {
44 struct notification_token;
45 struct collection_change_callback;
47 struct sort_descriptor;
60 [[nodiscard]]
size_t size()
const ;
66 void add(
const std::string&);
67 void add(
const int 64 _t &);
68 void add(
const double &);
69 void add(
const bool &);
71 void add(
const uuid &);
74 void add(
const Mixed &);
79 void 设立 (
size_t pos,
const int 64 _t &);
80 void set (
size_t pos,
const double &);
81 void 设立 (
size_t pos,
const bool &);
82 void set (
size_t pos,
const std::string &);
83 void 设立 (
size_t pos,
const uuid &);
86 void set (
size_t pos,
const混合&);
88 void 设立 (
size_t pos,
const binary &);
90 size_t find(
const int 64 _t &);
91 size_t find(
const bool &);
92 size_t find(
const double &);
93 size_t find(
const std::string &);
94 size_t find(
const uuid &);
97 size_t find(
const Mixed &);
99 size_t find(
const binary &);
102 结果排序(
const std::vector<sort_descriptor>&);
103 [[nodiscard]]
结果as_results()
const ;
105 notification_token add_notification_callback(std::shared_ptr<collection_change_callback>);
107 template <
typename ValueType>
108 好友ValueType get(
const list &,
size_t idx);
109 朋友 inline List* get_list(
list & lst);
110 朋友 内联 const List* get_list(
const list & lst);
111 inline:: 域::List* get_list();
112 inline const:: 域::List* get_list()
const ;
113#ifdef CPPREALM_HAVE_GENERATED_BRIDGE_TYPES
114 storage::List m_list[ 1 ];
116std::shared_ptr<::realm::List> m_list;
120 template <
typename ValueType>
121 [[nodiscard]] ValueType get(
const list &,
size_t idx);
123 [[nodiscard]] std::string get(
const list &,
size_t idx);
125 [[nodiscard]] int 64 _t get(
const list &,
size_t idx);
127 [[nodiscard]]
double get(
const list &,
size_t idx);
129 [[nodiscard]]
binary get(
const list &,
size_t idx);
131 [[nodiscard]]
uuid get(
const list &,
size_t idx);
135 [[nodiscard]] Decimal
128 get(
const list &,
size_t idx);
137 [[nodiscard]]
Mixed get(
const list &,
size_t idx);
139 [[nodiscard]]
obj get(
const list &,
size_t idx);
142 [[nodiscard]] std::Optional<int 64 _t> get(
const list & lst,
size_t idx);
144 [[nodiscard]] std::Optional<double> get(
const list & lst,
size_t idx);
146 [[nodiscard]] std::Optional<bool> get(
const list & lst,
size_t idx);
148 [[nodiscard]] std::Optional<uuid> get(
const list & lst,
size_t idx);
150 [[nodiscard]] std::Optional<object_id> get(
const list & lst,
size_t idx);
152 [[nodiscard]] std::Optional<std::string> get(
const list & lst,
size_t idx);
154 [[nodiscard]] std::Optional<binary> get(
const list & lst,
size_t idx);
156 [[nodiscard]] std::Optional<timestamp> get(
const list & lst,
size_t idx);