功能

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

合并

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

    先决条件

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

    声明

    Swift

    @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    public func valuePublisher<T>(_ object: T, keyPaths: [String]? = nil) -> RealmPublishers.Value<T> where T : RealmSwiftObject

    参数

    object

    要观察的托管对象。

    keyPaths

    发布者发出对这些属性 keyPath 的更改。 如果为nil ,则发布者发出每个属性的更改。

    返回值

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

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

    先决条件

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

    声明

    Swift

    @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    public func valuePublisher<T>(_ collection: T, keyPaths: [String]? = nil) -> RealmPublishers.Value<T> where T : RealmCollection, T : RealmSubscribable

    参数

    object

    要观察的托管集合。

    keyPaths

    发布者发出对这些属性 keyPath 的更改。 如果为nil ,则发布者发出每个属性的更改。

    返回值

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

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

    先决条件

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

    声明

    Swift

    @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    public func valuePublisher<T>(_ projection: T, keyPaths: [String]? = nil) -> RealmPublishers.Value<T> where T : ProjectionObservable, T : RealmSubscribable

    参数

    object

    要观察的托管对象。

    keyPaths

    发布者发出对这些属性 keyPath 的更改。 如果为nil ,则发布者发出每个属性的更改。

    返回值

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

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

    先决条件

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

    声明

    Swift

    @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    public func changesetPublisher<T>(_ object: T, keyPaths: [String]? = nil) -> RealmPublishers.ObjectChangeset<T> where T : RealmSwiftObject

    参数

    object

    要观察的托管对象。

    keyPaths

    发布者发出对这些属性 keyPath 的更改。 如果为nil ,则发布者发出每个属性的更改。

    返回值

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

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

    先决条件

    该对象必须是投影。

    声明

    Swift

    @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    public func changesetPublisher<T>(_ projection: T, keyPaths: [String]? = nil) -> RealmPublishers.ObjectChangeset<T> where T : ProjectionObservable

    参数

    projection

    要观察的 Realm 对象的投影。

    keyPaths

    发布者发出对这些属性 keyPath 的更改。 如果为nil ,则发布者发出每个属性的更改。

    返回值

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

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

    先决条件

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

    声明

    Swift

    @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    public func changesetPublisher<T>(_ collection: T, keyPaths: [String]? = nil) -> RealmPublishers.CollectionChangeset<T> where T : RealmCollection

    参数

    object

    要观察的托管集合。

    keyPaths

    发布者发出对这些属性 keyPath 的更改。 如果为nil ,则发布者发出每个属性的更改。

    返回值

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

Equatable

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

    声明

    Swift

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

    抛出异常

    描述问题的NSError

    声明

    Swift

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

    参数

    fileURL

    Realm 文件的本地 URL。

    encryptionKey

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