Work around Swift bug in Xcode 16
This commit is contained in:
parent
3b770e22df
commit
5434b04cb4
|
@ -126,7 +126,7 @@ extension Defaults {
|
|||
|
||||
super.init(name: name, suite: suite)
|
||||
|
||||
if (defaultValue as? _DefaultsOptionalProtocol)?._defaults_isNil == true {
|
||||
guard !isNil(defaultValue) else {
|
||||
return
|
||||
}
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@ extension UserDefaults {
|
|||
}
|
||||
|
||||
func _set<Value: Defaults.Serializable>(_ key: String, to value: Value) {
|
||||
if (value as? _DefaultsOptionalProtocol)?._defaults_isNil == true {
|
||||
guard !isNil(value) else {
|
||||
removeObject(forKey: key)
|
||||
return
|
||||
}
|
||||
|
|
|
@ -458,3 +458,14 @@ func runtimeWarn(
|
|||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@usableFromInline
|
||||
func isNil(_ value: Any) -> Bool {
|
||||
switch value {
|
||||
case Optional<Any>.none:
|
||||
return true
|
||||
default:
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue