功能

以下函数在全局范围内可用。

合并

  • 创建发布者,每次对象发生更改时都会发出该对象。

    先决条件

    该对象必须是尚未失效的托管对象。

    声明

    Swift

    @available(macOS 10.15, watchOS 6.0, iOS 13.0, iOSApplicationExtension 13.0, macOSApplicationExtension 10.15, tvOS 13.0, *)
    public func valuePublisher<T>(_ object: T) -> RealmPublishers.Value<T> where T : Object

    参数

    object

    要观察的托管对象。

    返回值

    每次发生更改时发出该对象的发布者。

  • 创建一个发布者,该发布者会在每次集合发生更改时发出该集合。

    先决条件

    该集合必须是尚未失效的托管集合。

    声明

    Swift

    @available(macOS 10.15, watchOS 6.0, iOS 13.0, iOSApplicationExtension 13.0, macOSApplicationExtension 10.15, tvOS 13.0, *)
    public func valuePublisher<T>(_ collection: T) -> RealmPublishers.Value<T> where T : RealmCollection, T : RealmSubscribable

    参数

    object

    要观察的托管集合。

    返回值

    每次发生更改时发出collection的发布者。

  • 创建发布者,每次对象更改时发出对象变更集。

    先决条件

    该对象必须是尚未失效的托管对象。

    声明

    Swift

    @available(macOS 10.15, watchOS 6.0, iOS 13.0, iOSApplicationExtension 13.0, macOSApplicationExtension 10.15, tvOS 13.0, *)
    public func changesetPublisher<T>(_ object: T) -> RealmPublishers.ObjectChangeset<T> where T : Object

    参数

    object

    要观察的托管对象。

    返回值

    每次对象更改时发出对象变更集的发布者。

  • 创建发布者,每次集合更改时发出集合变更集。

    先决条件

    该集合必须是尚未失效的托管集合。

    声明

    Swift

    @available(macOS 10.15, watchOS 6.0, iOS 13.0, iOSApplicationExtension 13.0, macOSApplicationExtension 10.15, tvOS 13.0, *)
    public func changesetPublisher<T>(_ collection: T) -> RealmPublishers.CollectionChangeset<T> where T : RealmCollection

    参数

    object

    要观察的托管集合。

    返回值

    每次集合更改时发出集合变更集的发布者。

Equatable

  • 返回一个布尔值,指示错误是否相同。

    声明

    Swift

    public func == (lhs: Error, rhs: Error) -> Bool

模式匹配

  • 模式匹配匹配Realm.Error ,以便实例可以与 Swift 的do { ... } catch { ... }语法一起使用。

    声明

    Swift

    public func ~= (lhs: Realm.Error, rhs: Error) -> Bool
  • 返回给定本地 URL 的 Realm 的模式版本。

    抛出异常

    描述问题的NSError

    声明

    Swift

    public func schemaVersionAtURL(_ fileURL: URL, encryptionKey: Data? = nil) throws -> UInt64

    参数

    fileURL

    Realm 文件的本地 URL。

    encryptionKey

    用于加密文件的 64 字节密钥,如果未加密,则为nil