Protocols
The following protocols are available globally.
-
Use this delegate to be provided a callback once authentication has succeed or failed
See moreDeclaration
Objective-C
@protocol RLMASLoginDelegate
Swift
protocol RLMASLoginDelegate
-
Protocol representing a BSON value. BSON is a computer data interchange format. The name “BSON” is based on the term JSON and stands for “Binary JSON”.
The following types conform to RLMBSON:
NSNull
NSNumber
NSString
NSData
NSDateInterval
NSDate
RLMObjectId
RLMDecimal128
NSRegularExpression
RLMMaxKey
RLMMinKey
NSDictionary
NSArray
NSUUID
See
RLMBSONTypeSee
bsonspec.orgDeclaration
Objective-C
@protocol RLMBSON
Swift
protocol RLMBSON
-
A homogenous collection of Realm-managed objects. Examples of conforming types include
See moreRLMArray
,RLMSet
,RLMResults
, andRLMLinkingObjects
.Declaration
Objective-C
@protocol RLMCollection <NSFastEnumeration, RLMThreadConfined>
Swift
protocol RLMCollection : NSFastEnumeration, RLMThreadConfined
-
Delegate which is used for subscribing to changes on a
See more[RLMMongoCollection watch]
stream.Declaration
Objective-C
@protocol RLMChangeEventDelegate
Swift
protocol RLMChangeEventDelegate
-
Delegate which is used for subscribing to changes.
See moreDeclaration
Objective-C
@protocol RLMEventDelegate <NSObject>
Swift
protocol RLMEventDelegate : NSObjectProtocol
-
Transporting protocol for foreign interfaces. Allows for custom request/response handling.
See moreDeclaration
Objective-C
@protocol RLMNetworkTransport <NSObject>
Swift
protocol RLMNetworkTransportProtocol : NSObjectProtocol
-
Objects of types which conform to
RLMThreadConfined
can be managed by a Realm, which will make them bound to a thread-specificRLMRealm
instance. Managed objects must be explicitly exported and imported to be passed between threads.Managed instances of objects conforming to this protocol can be converted to a thread-safe reference for transport between threads by passing to the
+[RLMThreadSafeReference referenceWithThreadConfined:]
constructor.Note that only types defined by Realm can meaningfully conform to this protocol, and defining new classes which attempt to conform to it will not make them work with
See moreRLMThreadSafeReference
.Declaration
Objective-C
@protocol RLMThreadConfined <NSObject>
Swift
protocol RLMThreadConfined : NSObjectProtocol
-
RLMValue is a property type which represents a polymorphic Realm value. This is similar to the usage of
AnyObject
/Any
in Swift.// A property on `MyObject` @property (nonatomic) id<RLMValue> myAnyValue; // A property on `AnotherObject` @property (nonatomic) id<RLMValue> myAnyValue; MyObject *myObject = [MyObject createInRealm:realm withValue:@[]]; myObject.myAnyValue = @1234; // underlying type is NSNumber. myObject.myAnyValue = @"hello"; // underlying type is NSString. AnotherObject *anotherObject = [AnotherObject createInRealm:realm withValue:@[]]; myObject.myAnyValue = anotherObject; // underlying type is RLMObject.
The following types conform to RLMValue:
See moreNSData
NSDate
NSNull
NSNumber
NSUUID
NSString
RLMObject
RLMObjectIdDeclaration
Objective-C
@protocol RLMValue
Swift
protocol RLMValue