Definições de tipo

As seguintes definições de tipo estão disponíveis globalmente.

  • Um chamada de resposta de chamada que é invocado em cada elemento na coleção Resultados que retorna a chave da seção.

    Declaração

    Objective-C

    typedef id<RLMValue> _Nullable (^RLMSectionedResultsKeyBlock)(id _Nonnull)

    Swift

    typealias RLMSectionedResultsKeyBlock = (Any) -> (any RLMValue)?

Constantes de notificação

  • 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 como YES e os outros dois argumentos serão nil. O bloqueio nunca mais será chamado depois disso.

    Se o objeto for modificado, o bloco será chamado com deleted definido como NO, um erro nil e uma array de objetos RLMPropertyChange que indicam quais propriedades dos objetos foram modificadas.

    error é sempre nil 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

    Objective-C

    typedef void (^RLMObjectMigrationBlock)(RLMObject *_Nullable,
                                            RLMObject *_Nullable)

    Swift

    typealias RLMObjectMigrationBlock = (RLMObject?, RLMObject?) -> Void

    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.

    Declaração

    Objective-C

    typedef void (^RLMAsyncOpenRealmCallback)(RLMRealm *_Nullable,
                                              NSError *_Nullable)

    Swift

    typealias RLMAsyncOpenRealmCallback = (RLMRealm?, (any Error)?) -> Void
  • 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