B9AssociatedObject

Swift Version Swift Package Manager Build Status gitee 镜像

Objective-C 关联值的 Swift 包装器,方便在 Swift 中使用。它主要用于通过扩展向现有类型添加属性。

安装

你可以使用 Swift Package Manager 或手动导入的方式将此包添加到你的项目中。

你也可以使用 gitee 镜像

用法

你可以像下面这样定义扩展属性。支持所有类型的 Swift 类型,不仅限于 Objective-C 对象。

import B9AssociatedObject

private let fooAssociation = AssociatedObject<String>()
extension SomeObject {
    var foo: String? {
        get { fooAssociation[self] }
        set { fooAssociation[self] = newValue }
    }
}