유형 정의

다음 유형 정의는 전 세계적으로 사용할 수 있습니다.

  • 결과 컬렉션 의 각 요소에 대해 호출되는 콜백 으로 섹션 키를 반환합니다.

    선언

    Objective-C

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

    Swift

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

알림 상수

  • Realm이 변경되었음을 나타내는 알림입니다.

    선언

    Objective-C

    typedef NSString *RLMNotification

    Swift

    struct RLMNotification : _ObjectiveCBridgeable, Hashable, Equatable, _SwiftNewtypeWrapper, RawRepresentable, @unchecked Sendable
  • RLMObject 알림 에 대한 콜백 차단 입니다.

    관리 Realm 에서 객체 가 삭제되면 deletedYES 로 설정하다 차단 이 호출되고 다른 두 인수는 nil 입니다. 이후에는 차단 이 다시 호출되지 않습니다.

    객체가 수정되면 블록이 호출되고 deletedNO 로 설정되고, nil 오류가 발생하고, 객체의 어떤 속성이 수정되었는지를 나타내는 RLMPropertyChange 객체 배열이 표시됩니다.

    error 은 항상 nil 이며 향후 버전에서 제거될 예정입니다.

    선언

    Objective-C

    typedef void (^RLMObjectChangeBlock)(BOOL,
                                         NSArray<RLMPropertyChange *> *_Nullable,
                                         NSError *_Nullable)

    Swift

    typealias RLMObjectChangeBlock = (Bool, [RLMPropertyChange]?, (any Error)?) -> Void
  • RLMLogger에서 설정할 수 있는 로그 콜백 함수입니다.

    로그 함수는 여러 스레드에서 동시에 호출될 수 있으며, 필요한 경우 자체 동기화를 수행합니다.

    선언

    Objective-C

    typedef void (^RLMLogFunction)(RLMLogLevel, NSString *_Nonnull)

    Swift

    typealias RLMLogFunction = @Sendable (LogLevel, String) -> Void
  • Realm 에 있는 객체 의 이전 버전과 새 버전을 모두 제공하는 차단 유형입니다. 객체 속성은 키가 있는 첨자를 사용해야 액세스할 수 있습니다.

    선언

    Objective-C

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

    Swift

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

    매개변수

    oldObject

    원래 Realm의 객체입니다(읽기 전용).

    newObject

    마이그레이션된 Realm(읽기-쓰기)의 객체입니다.

  • Realm을 비동기적으로 열기 위한 콜백 차단 입니다.

    열기에 성공적인 하면 Realm 을 반환하고, 그렇지 않으면 오류를 반환합니다.

    선언

    Objective-C

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

    Swift

    typealias RLMAsyncOpenRealmCallback = (RLMRealm?, (any Error)?) -> Void
  • 비동기 트랜잭션의 ID입니다.

    선언

    Objective-C

    typedef unsigned int RLMAsyncTransactionId

    Swift

    typealias RLMAsyncTransactionId = UInt32
  • Realm 내의 데이터가 수정될 때마다 실행할 블록 유형입니다.

    ~를 참조하세요.

    -[RLMRealm addNotificationBlock:]

    선언

    Objective-C

    typedef void (^RLMNotificationBlock)(RLMNotification _Nonnull,
                                         RLMRealm *_Nonnull)

    Swift

    typealias RLMNotificationBlock = (RLMNotification, RLMRealm) -> Void
  • Realm을 마이그레이션하는 데 사용되는 마이그레이션 블록의 유형입니다.

    선언

    Objective-C

    typedef void (^RLMMigrationBlock)(RLMMigration *_Nonnull, uint64_t)

    Swift

    typealias RLMMigrationBlock = @Sendable (RLMMigration, UInt64) -> Void

    매개변수

    migration

    마이그레이션을 수행하는 데 사용되는 RLMMigration 객체입니다. 마이그레이션 객체를 사용하면 마이그레이션이 필요한 기존 객체를 열거하고 변경할 수 있습니다.

    oldSchemaVersion

    마이그레이션되는 Realm의 스키마 버전입니다.

  • 사용자에게 반환되기 전에 압축해야 하는지 여부를 결정하기 위해 프로세스 수명 동안 처음으로 Realm을 열 때 호출되는 블록입니다. 총 파일 크기(데이터 + 여유 공간)와 파일의 데이터가 사용한 총 바이트가 전달됩니다.

    파일 압축을 시도해야 함을 나타내려면 YES 을 반환합니다. 다른 프로세스가 압축에 액세스하면 압축을 건너뜁니다.

    선언

    Objective-C

    typedef BOOL (^RLMShouldCompactOnLaunchBlock)(NSUInteger, NSUInteger)

    Swift

    typealias RLMShouldCompactOnLaunchBlock = @Sendable (UInt, UInt) -> Bool
  • Results 을(를) 비동기적으로 반환하는 API에 사용되는 차단 유형입니다.

    선언

    Objective-C

    typedef void (^RLMResultsCompletionBlock)(RLMResults *_Nullable,
                                              NSError *_Nullable)

    Swift

    typealias RLMResultsCompletionBlock = (RLMResults<AnyObject>?, (any Error)?) -> Void