123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- #import <Realm/RLMObjectBase_Dynamic.h>
- RLM_HEADER_AUDIT_BEGIN(nullability, sendability)
- @class RLMProperty, RLMArray, RLMSchema;
- typedef NS_ENUM(int32_t, RLMPropertyType);
- FOUNDATION_EXTERN void RLMInitializeWithValue(RLMObjectBase *, id, RLMSchema *);
- @interface RLMObjectBase () {
- @public
- RLMRealm *_realm;
- __unsafe_unretained RLMObjectSchema *_objectSchema;
- }
- + (nullable RLMObjectSchema *)sharedSchema;
- + (nullable NSArray<RLMProperty *> *)_getProperties;
- + (bool)_realmIgnoreClass;
- + (NSDictionary<NSString *, NSString *> *)propertiesMapping;
- @end
- @interface RLMDynamicObject : RLMObject
- @end
- FOUNDATION_EXTERN id _Nullable RLMValidatedValueForProperty(id object, NSString *key, NSString *className);
- FOUNDATION_EXTERN BOOL RLMObjectBaseAreEqual(RLMObjectBase * _Nullable o1, RLMObjectBase * _Nullable o2);
- typedef void (^RLMObjectNotificationCallback)(RLMObjectBase *_Nullable object,
- NSArray<NSString *> *_Nullable propertyNames,
- NSArray *_Nullable oldValues,
- NSArray *_Nullable newValues,
- NSError *_Nullable error);
- FOUNDATION_EXTERN RLMNotificationToken *RLMObjectBaseAddNotificationBlock(RLMObjectBase *obj,
- NSArray<NSString *> *_Nullable keyPaths,
- dispatch_queue_t _Nullable queue,
- RLMObjectNotificationCallback block);
- RLMNotificationToken *RLMObjectAddNotificationBlock(RLMObjectBase *obj,
- RLMObjectChangeBlock block,
- NSArray<NSString *> *_Nullable keyPaths,
- dispatch_queue_t _Nullable queue);
- FOUNDATION_EXTERN BOOL RLMIsObjectOrSubclass(Class klass);
- FOUNDATION_EXTERN BOOL RLMIsObjectSubclass(Class klass);
- FOUNDATION_EXTERN const NSUInteger RLMDescriptionMaxDepth;
- FOUNDATION_EXTERN id RLMObjectFreeze(RLMObjectBase *obj) NS_RETURNS_RETAINED;
- FOUNDATION_EXTERN id RLMObjectThaw(RLMObjectBase *obj);
- FOUNDATION_EXTERN uint64_t RLMObjectBaseGetCombineId(RLMObjectBase *);
- @interface RLMManagedPropertyAccessor : NSObject
- + (void)observe:(RLMProperty *)property on:(RLMObjectBase *)parent;
- + (void)promote:(RLMProperty *)property on:(RLMObjectBase *)parent;
- + (void)initialize:(RLMProperty *)property on:(RLMObjectBase *)parent;
- + (id)get:(RLMProperty *)property on:(RLMObjectBase *)parent;
- + (void)set:(RLMProperty *)property on:(RLMObjectBase *)parent to:(id)value;
- @end
- RLM_HEADER_AUDIT_END(nullability, sendability)
|