19#ifndef CPPREALM_BRIDGE_PROPERTY_HPP
20#define CPPREALM_BRIDGE_PROPERTY_HPP
24#include <cpprealm/internal/bridge/utils.hpp>
30命名空间realm::internal::bridge {
62 属性 (
const 属性 & other) ;
63 property & Operator=(
const property & other);
64 属性 (
属性 && other)
noException ;
65 属性 &operator=(
属性 && other)
noException ;
67 属性 (
const Property&);
68 属性(
const std::string& name,
71 属性(
const std::string& name,
73 const std::string& object_name);
74 Operator Property()
const ;
75 void set_object_link(
const std::string&);
76 void set_origin_property_name(
const std::string&);
78 void set_primary_key(
bool );
79 bool is_primary()
const ;
80 std::string name()
const ;
81 [[nodiscard]]
col_key colum_key()
const ;
83#ifdef CPPREALM_HAVE_GENERATED_BRIDGE_TYPES
84 storage::Property m_property[ 1 ];
86 std::shared_ptr<Property> m_property;
91 template <
typename E>
92 constexpr auto to_underlying(E e)
94 return static_cast< typename std::underlying_type<E>::type
> (e);
97 内联 constexpr property::type Operator|(property::type a, property::type b)
99 return static_cast< 属性::type
> (to_underlying(a) | to_underlying(b));
101 内联 constexprproperty ::typeoperator&( 属性 ::typea, 属性 :: 属性)
103 return static_cast< property::type
> (to_underlying(a) & to_underlying(b));
106 内联 constexpr boolproperty_has_flag (属性 :: 属性 :: typeflag){
107 return static_cast<bool> (
属性 & flag);