@@ -165,7 +165,11 @@ public extension NSAttributeDescription {
165
165
if let hashModifier { versionHashModifier = hashModifier }
166
166
if let defaultValue { self . defaultValue = defaultValue }
167
167
isOptional = valueType is any AnyOptional . Type
168
+
169
+ assert ( valueTransformerName == nil )
170
+ valueTransformerName = nil
168
171
if valueType != Any . self { self . valueType = valueType }
172
+
169
173
setOptions ( options)
170
174
}
171
175
}
@@ -177,7 +181,6 @@ private extension NSAttributeDescription {
177
181
allowsExternalBinaryDataStorage = false
178
182
isIndexedBySpotlight = false
179
183
isTransient = false
180
- valueTransformerName = nil
181
184
if #available( iOS 15 . 0 , macOS 12 . 0 , tvOS 15 . 0 , watchOS 8 . 0 , * ) {
182
185
allowsCloudEncryption = false
183
186
}
@@ -193,8 +196,10 @@ private extension NSAttributeDescription {
193
196
case . ephemeral: isTransient = true
194
197
195
198
case . transformableByName( let name) :
199
+ assert ( valueTransformerName == nil )
196
200
valueTransformerName = name
197
201
case . transformableByType( let type) :
202
+ assert ( valueTransformerName == nil )
198
203
valueTransformerName = NSStringFromClass ( type)
199
204
200
205
case . allowsCloudEncryption: // FIXME: restrict availability
0 commit comments