测试已测试 | ✗ |
Lang语言 | SwiftSwift |
许可证 | 无许可证 |
Released最后发布 | 2023年5月 |
SPM支持 SPM | ✓ |
由 Slipp Douglas Thompson 维护,Slipp Douglas Thompson。
NilCoalescingAssignmentOperators 是一个 Swift 微型库,提供了两个 nil 合并/赋值组合运算符
??=
aVariable ??= newValue
当 aVariable
为 nil 时执行值赋值(类似 Ruby 的 ||=
运算符)
aVariable
非 nil,则不执行任何操作。aVariable
是 nil 但 newValue
非 nil,则执行赋值:aVariable = newValue
aVariable
和 newValue
都是 nil,则不执行任何操作。aVariable ??= newValue
等效于
// roughly:
aVariable = aVariable ?? newValue
// precisely:
if aVariable == nil { aVariable = newValue }
=??
aVariable =?? newValue
当 newValue
非 nil 时执行值赋值(类似 ??=
但优先于 aVariable
)
newValue
是 nil,则不执行任何操作。newValue
非 nil,则执行赋值:aVariable = newValue
aVariable
和 newValue
都是非 nil 的,仍执行赋值操作。aVariable =?? newValue
等效于
// roughly:
aVariable = newValue ?? aVariable
// precisely:
if newValue != nil { aVariable = newValue }
// or
if let newValue = newValue { aVariable = newValue }
主分支是 Swift 5.x,当前库版本的构建覆盖(对 Package.swift、xcodeproj 和其他构建文件的较小更改集)可在 swift-4.2、swift-4、和 swift-3 分支上找到。(注意:由于 Swift 4.2 或 4.0 是最新版本,我可能不像以前那样常常构建它们,但这些建设性更改已经生效,并且我已将新的库版本合并进去。)