Type Definitions
The following type definitions are available globally.
-
A block type which provides both the old and new versions of an object in the Realm. Object properties can only be accessed using keyed subscripting.
See
-[RLMMigration enumerateObjects:block:]
Declaration
Parameters
oldObject
The object from the original Realm (read-only).
newObject
The object from the migrated Realm (read-write).
-
A callback block for
RLMObject
notifications.If the object is deleted from the managing Realm, the block is called with
deleted
set toYES
and the other two arguments arenil
. The block will never be called again after this.If the object is modified, the block will be called with
deleted
set toNO
, anil
error, and an array ofRLMPropertyChange
objects which indicate which properties of the objects were modified.If an error occurs,
deleted
will beNO
,changes
will benil
, anderror
will include information about the error. The block will never be called again after an error occurs.Declaration
Objective-C
typedef void (^RLMObjectChangeBlock)(BOOL, NSArray<RLMPropertyChange *> *_Nullable, NSError *_Nullable)
Swift
typealias RLMObjectChangeBlock = (Bool, [RLMPropertyChange]?, Error?) -> Void
-
A token representing an identity provider’s credentials.
Declaration
Objective-C
typedef NSString *RLMSyncCredentialsToken
Swift
typealias RLMSyncCredentialsToken = NSString
-
A type representing the unique identifier of a Realm Object Server identity provider.
Declaration
Objective-C
typedef NSString *RLMIdentityProvider
Swift
typealias RLMIdentityProvider = NSString
-
A block type representing a block which can be used to report a sync-related error to the application. If the error pertains to a specific session, that session will also be passed into the block.
Declaration
Objective-C
typedef void (^RLMSyncErrorReportingBlock)(NSError *_Nonnull, RLMSyncSession *_Nullable)
Swift
typealias RLMSyncErrorReportingBlock = (Error, RLMSyncSession?) -> Void
-
The type of a progress notification block intended for reporting a session’s network activity to the user.
transferredBytes
refers to the number of bytes that have been uploaded or downloaded.transferrableBytes
refers to the total number of bytes transferred, and pending transfer.Declaration
Objective-C
typedef void (^RLMProgressNotificationBlock)(NSUInteger, NSUInteger)
Swift
typealias RLMProgressNotificationBlock = (UInt, UInt) -> Void
-
A block type used for APIs which asynchronously vend an
RLMSyncUser
.Declaration
Objective-C
typedef void (^RLMUserCompletionBlock)(RLMSyncUser *_Nullable, NSError *_Nullable)
Swift
typealias RLMUserCompletionBlock = (RLMSyncUser?, Error?) -> Void
-
A token originating from the Realm Object Server.
Declaration
Objective-C
typedef NSString *RLMServerToken
-
A notification indicating that changes were made to a Realm.
Declaration
Objective-C
typedef NSString *RLMNotification
-
The type of a block to run whenever the data within the Realm is modified.
See
-[RLMRealm addNotificationBlock:]
Declaration
Objective-C
typedef void (^RLMNotificationBlock)(RLMNotification _Nonnull, RLMRealm *_Nonnull)
-
The type of a migration block used to migrate a Realm.
Declaration
Objective-C
typedef void (^RLMMigrationBlock)(RLMMigration *_Nonnull, uint64_t)
Parameters
migration
A
RLMMigration
object used to perform the migration. The migration object allows you to enumerate and alter any existing objects which require migration.oldSchemaVersion
The schema version of the Realm being migrated.