Definições de tipo
As seguintes definições de tipo estão disponíveis globalmente.
-
Uma notificação indicando que as alterações foram feitas em um Realm.
Declaração
Objective-C
typedef NSString *RLMNotification
Swift
struct RLMNotification : _ObjectiveCBridgeable, Hashable, Equatable, _SwiftNewtypeWrapper, RawRepresentable, @unchecked Sendable
-
Um bloqueio de chamada de resposta de resposta para
RLMObject
notificações.Se o objeto for excluído do Realm de gerenciamento , o bloco será chamado com
deleted
definido comoYES
e os outros dois argumentos serãonil
. O bloqueio nunca mais será chamado depois disso.Se o objeto for modificado, o bloco será chamado com
deleted
definido comoNO
, um erronil
e uma array de objetosRLMPropertyChange
que indicam quais propriedades dos objetos foram modificadas.error
é semprenil
e será removido em uma versão futura.Declaração
Objective-C
typedef void (^RLMObjectChangeBlock)(BOOL, NSArray<RLMPropertyChange *> *_Nullable, NSError *_Nullable)
Swift
typealias RLMObjectChangeBlock = (Bool, [RLMPropertyChange]?, (any Error)?) -> Void
-
Uma função de retorno de chamada de registro que pode ser definida em RLMLogger.
A função de registro pode ser chamada de vários threads simultaneamente e é responsável por executar sua própria sincronização, se alguma for necessária.
Declaração
Objective-C
typedef void (^RLMLogFunction)(RLMLogLevel, NSString *_Nonnull)
Swift
typealias RLMLogFunction = @Sendable (LogLevel, String) -> Void
-
Um tipo de bloco que fornece as versões antiga e nova de um objeto no Realm. As propriedades do objeto só podem ser acessadas usando assinatura com chave.
Declaração
Parâmetros
oldObject
O objeto do Realm original (somente leitura).
newObject
O objeto do Realm migrado (leitura-gravação).
-
Um bloco de chamada de resposta de chamada para abrir Realms de forma assíncrona.
Retorna o Realm se a abertura foi bem-sucedida ou um erro.
-
A ID da transação assíncrona.
Declaração
Objective-C
typedef unsigned int RLMAsyncTransactionId
Swift
typealias RLMAsyncTransactionId = UInt32
-
O tipo de bloco a ser executado sempre que os dados dentro do Realm forem modificados.
Declaração
Objective-C
typedef void (^RLMNotificationBlock)(RLMNotification _Nonnull, RLMRealm *_Nonnull)
Swift
typealias RLMNotificationBlock = (RLMNotification, RLMRealm) -> Void
-
O tipo de bloco de migração usado para migrar um Realm.
Declaração
Objective-C
typedef void (^RLMMigrationBlock)(RLMMigration *_Nonnull, uint64_t)
Swift
typealias RLMMigrationBlock = @Sendable (RLMMigration, UInt64) -> Void
Parâmetros
migration
Um objeto
RLMMigration
usado para executar a migração. O objeto de migração permite enumerar e alterar quaisquer objetos existentes que exijam migração.oldSchemaVersion
A versão do esquema do Realm que está sendo migrada.
-
Um bloco chamado ao abrir um Realm pela primeira vez durante a vida útil de um processo para determinar se ele deve ser compactado antes de ser retornado ao usuário. É passado o tamanho total do arquivo (dados + espaço livre) e o total de bytes usados pelos dados no arquivo.
Retorne
YES
para indicar que uma tentativa de compactar o arquivo deve ser feita. A compactação será ignorada se outro processo estiver acessando-a.Declaração
Objective-C
typedef BOOL (^RLMShouldCompactOnLaunchBlock)(NSUInteger, NSUInteger)
Swift
typealias RLMShouldCompactOnLaunchBlock = @Sendable (UInt, UInt) -> Bool
-
Um tipo de bloco usado para APIs que retornam um
Results
de forma assíncrona.Declaração
Objective-C
typedef void (^RLMResultsCompletionBlock)(RLMResults *_Nullable, NSError *_Nullable)
Swift
typealias RLMResultsCompletionBlock = (RLMResults<AnyObject>?, (any Error)?) -> Void